element-ui自定義表格如何給input雙向綁定數(shù)據(jù)
問題描述
有個項目需求點擊添加按鈕添加一行,我采用的是自定義表格,剛開始寫好之后,點擊添加,可以實現(xiàn),但是卻發(fā)現(xiàn)輸入框不能輸入數(shù)據(jù),控制臺報錯
先看一下,錯誤的代碼
這里列出了主要代碼
<el-table :data="tableData" style="width: 98%; margin-left:20px"> <el-table-column label="屬性類型" align="center"> <el-select v-model="attrType" placeholder="請選擇屬性類型"> <el-option label="區(qū)域一" value="shanghai" /> <el-option label="區(qū)域二" value="beijing" /> </el-select> </el-table-column> <el-table-column label="屬性名稱" align="center"> <el-input v-model="attrName" placeholder="請輸入屬性名稱" clearable /> </el-table-column> <el-table-column label="屬性標識" align="center"> <el-input v-model="attrFlag" placeholder="請輸入屬性標識" clearable /> </el-table-column> <el-table-column label="屬性映射" align="center"> <el-input v-model="attrMap" placeholder="請輸入屬性映射" clearable /> </el-table-column> <el-table-column label="屬性單位" align="center"> <el-input v-model="attrUnit" placeholder="請輸入屬性單位" clearable /> </el-table-column> <el-table-column label="屬性符號" align="center"> <el-input v-model="attrSymbol" placeholder="請輸入屬性符號" clearable /> </el-table-column> <el-table-column label="操作" align="center"> <el-button size="mini" type="danger" @click="handleDelete(item, index)">刪除</el-button> </el-table-column> </el-table>
data () { return { tableData: [ { attrType: '', attrName: '', attrFlag: '', attrMap: '', attrUnit: '', attrSymbol: '' } ] } },
實現(xiàn)的效果
看著好像沒什么問題,但是inout輸入框不能輸入東西,控制臺報警告,后來仔細看了一下官方提供的自定義數(shù)據(jù)表格,發(fā)現(xiàn)缺少一些代碼,
看一下官方的示例
<template> <el-table :data="tableData" style="width: 100%"> <el-table-column label="日期" width="180"> <template slot-scope="scope"> <i class="el-icon-time"></i> <span style="margin-left: 10px">{{ scope.row.date }}</span> </template> </el-table-column> <el-table-column label="姓名" width="180"> <template slot-scope="scope"> <el-popover trigger="hover" placement="top"> <p>姓名: {{ scope.row.name }}</p> <p>住址: {{ scope.row.address }}</p> <div slot="reference" class="name-wrapper"> <el-tag size="medium">{{ scope.row.name }}</el-tag> </div> </el-popover> </template> </el-table-column> <el-table-column label="操作"> <template slot-scope="scope"> <el-button size="mini" @click="handleEdit(scope.$index, scope.row)">編輯</el-button> <el-button size="mini" type="danger" @click="handleDelete(scope.$index, scope.row)">刪除</el-button> </template> </el-table-column> </el-table> </template> <script> export default { data() { return { tableData: [{ date: '2016-05-02', name: '王小虎', address: '上海市普陀區(qū)金沙江路 1518 弄' }, { date: '2016-05-04', name: '王小虎', address: '上海市普陀區(qū)金沙江路 1517 弄' }, { date: '2016-05-01', name: '王小虎', address: '上海市普陀區(qū)金沙江路 1519 弄' }, { date: '2016-05-03', name: '王小虎', address: '上海市普陀區(qū)金沙江路 1516 弄' }] } }, methods: { handleEdit(index, row) { console.log(index, row); }, handleDelete(index, row) { console.log(index, row); } } } </script>
看上圖,有沒有發(fā)現(xiàn)問題所在,我出現(xiàn)錯誤的地方有兩個
- 第一個: 沒有寫<template slot-scope="scope">
- 第二個:給input綁定的數(shù)據(jù)是attrName兒不是scope.row.attrName
那么scope.row和scope.column是什么東東?我們打印一下看看
所以知道我為什么把原來的attrName替換成了scope.row.attrName的原因了吧。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
vue3數(shù)據(jù)監(jiān)聽watch/watchEffect的示例代碼
我們都知道監(jiān)聽器的作用是在每次響應式狀態(tài)發(fā)生變化時觸發(fā),在組合式?API?中,我們可以使用?watch()函數(shù)和watchEffect()函數(shù),下面我們來看下vue3如何進行數(shù)據(jù)監(jiān)聽watch/watchEffect,感興趣的朋友一起看看吧2023-02-02基于ElementUI中Table嵌套實現(xiàn)多選的示例代碼
這篇文章主要介紹了基于ElementUI中Table嵌套實現(xiàn)多選的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-03-03使用vue初用antd 用v-model來雙向綁定Form表單問題
這篇文章主要介紹了使用vue初用antd 用v-model來雙向綁定Form表單問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-04-04vue-quill-editor 自定義工具欄和自定義圖片上傳路徑操作
這篇文章主要介紹了vue-quill-editor 自定義工具欄和自定義圖片上傳路徑操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-08-08