[TOC]
>[success] # 提交表單時傳值參數處理方案
有許多時候需要給后臺傳遞的參數跟前端展示的參數不同, 例如前端需要在頁面展示的是個數組的內容,但是后臺需要傳過去的不是數組的形式,而是逗號分隔的字符串形式 , 就需要去把這個數組用join(',')給轉換成字符串分隔的形式,但是這樣就改變了原數組,如果使用的是element ui的某些ui組件,人家組件要求就是數組形式,強制給轉換成字符串就會報錯,換以前我的寫法:
>[success] ## 以前的寫法
~~~
// 變量
data(){
formList: {
a: ['1','2''3']
b: false
}
}
// 參數
let parameter = {
nameLsit: this.formList.a.join(','),
isShow: this.formList.b
}
// 調用接口
Api(parameter).then(res => {
console.log(res,'成功')
}).catch(e => {
console.log(e,'失敗')
})
~~~
<br/>
>[success] ## 正確的寫法
上面的寫法很麻煩也很不實用,如果以后有一個需求需要每次提交表單時候保存提交時候的狀態,就會很麻煩重新改代碼,正確的寫法是使用深拷貝來實現復制一份數據修改復制的數據,然后最終把復制的數據當做參數傳給后臺
~~~
// 引入深拷貝文件
import { deepCopy } from '@/utils'
// 變量名字直接按照接口需要的名字起
data(){
formList: {
nameLsit: ['1','2''3']
isShow: false
}
}
// 參數
let formList = deepCopy(this.formList)
formList.nameLsit = formList.nameLsit.join(',')
let parameter = formList
// 調用接口
Api(parameter).then(res => {
console.log(res,'成功')
}).catch(e => {
console.log(e,'失敗')
})
~~~
- vue復選框邏輯
- get請求給后臺傳數組
- 提交表單時傳值參數處理方案
- Element ui上傳圖片功能
- async和await的使用
- 時間戳轉換
- 日期格式轉換時間戳
- 時間戳轉換日期格式
- 對深拷貝的認知總結
- vue-右鍵菜單功能
- textarea中換行、回車、空格的識別與處理
- element ui表格合并
- 合并行(上下行)
- 雙層for循環
- 數組去重
- 瀑布流
- 前端多條件篩選
- 閉包的理解
- 改變this指向
- vue單選框邏輯
- 對象數組根據某個屬性來進行排序
- vscode插件整理
- 對象數組多條件去重
- Blob類型數據轉換Json數據類型
- Element ui做批量上傳功能
- 前端cookie和后端cookie
- 強制轉換https協議
- 給事件傳額外參數
- 樹形結構數據處理
- 查找所有父級數據
- 根據id篩選單條數據
- 動態引入阿里圖標庫
- 四舍五入
- 封裝一個Promise.allSettled方法
- 判斷輸入框內是否有emoji表情
- element-ui的popover組件位置偏移
- formData上傳文件時,攜帶【數組對象參數】
- 前端解壓壓縮包(zip)解壓后上傳解壓的文件
- element ui表格列相同解決辦法
- elementUI,table復選框多選,翻頁/切換條數時保持選中狀態
- cookie 和 token 的區別