VUE table表格動(dòng)態(tài)添加一列數(shù)據(jù),新增的這些數(shù)據(jù)不可以編輯(v-model綁定的數(shù)據(jù)不能實(shí)時(shí)更新)
一、問(wèn)題
用elementUi橫著增加一行數(shù)據(jù)沒(méi)毛病,可以操作
添加一列,這新增的這一列, 第一次去賦值的時(shí)候值是改了, 但沒(méi)生效
點(diǎn)擊下一行時(shí) 值就變過(guò)來(lái)
二、原因
橫向添加 是復(fù)制上面的某一條數(shù)據(jù)來(lái)的,因?yàn)閐ata里面有這些屬性的定義,所以橫向添加沒(méi)問(wèn)題
而縱向添加的數(shù)據(jù),因?yàn)闆](méi)有事先在 el-select v-modle="" 里面定義好字段,定義好的option是通過(guò)v-for出來(lái)的(option是寫(xiě)死的就不會(huì)有這個(gè)問(wèn)題),就會(huì)出現(xiàn)選擇后,select元素上無(wú)法展示,但是其實(shí)數(shù)值已經(jīng)綁定上去了的后果,即:
v-model綁定數(shù)據(jù)不實(shí)時(shí)更新
三、解決
使用 vm.$set 實(shí)例方法
// eg:this.$set(this.someObject,'b',2)
ps:vue-table 添加動(dòng)態(tài)鎖定和解鎖列功能 很強(qiáng)大
為什么要寫(xiě)下這篇文章,因?yàn)槲以诰W(wǎng)上找不到,關(guān)于vue-table
添加動(dòng)態(tài)鎖定和解鎖列功能 的介紹
自己就嘗試著研究了下 。
我們都知道 鎖定列 只要跟 <vxe-table-column type="seq" width="60" align="center" fixed="left"/>
一樣 ,添加
fixed=“l(fā)eft”
或者 fixed=“right”
就可以向左或向右 鎖定, 但這畢竟 不能動(dòng)態(tài)鎖定 。
首先我要的效果是 :
這是站在官方文檔實(shí)現(xiàn) 復(fù)雜excel 篩選功能的基礎(chǔ)上進(jìn)行的
廢話(huà)不多說(shuō),直接擊要害。
在 FilterExcel.vue
里邊
在相應(yīng)的位置 添加代碼 :
<li class="me-menu" @click="onLock('left')"> <span>左鎖定此列</span> </li> <li class="me-menu" @click="onLock('right')"> <span>右鎖定此列</span> </li> <li class="me-menu" @click="offLock"> <span>解除鎖定</span> </li>
然后就是在方法區(qū)添加方法:offLock() { const { $panel, $table, $columnIndex } = this.params $table.closeFilter() $panel.$options.parent.tableColumn[$columnIndex].fixed = undefined $table.refreshColumn() }, onLock(val) { const { $panel, $table, $columnIndex } = this.params $table.closeFilter() $panel.$options.parent.tableColumn[$columnIndex].fixed = '' + val + '' $table.refreshColumn() },
到此 功能實(shí)現(xiàn)。
頁(yè)面組件引用 :FilterExcel.vue
實(shí)際開(kāi)發(fā)中都是封裝成組件 方便使用
<vxe-table-column field="platform" title="平臺(tái)" width="100px" align="center" sortable :filters="[{data: {vals: [], sVal: '', fMenu: '', f1Type:'', f1Val: '', fMode: 'and', f2Type: '', f2Val: ''}}]" :filter-render="{name: 'FilterExcel'}" />
總結(jié)
到此這篇關(guān)于VUE table表格動(dòng)態(tài)添加一列數(shù)據(jù),新增的這些數(shù)據(jù)不可以編輯(v-model綁定的數(shù)據(jù)不能實(shí)時(shí)更新)的文章就介紹到這了,更多相關(guān)vue table 動(dòng)態(tài)添加數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vue Promise解決回調(diào)地獄問(wèn)題實(shí)現(xiàn)方法
這篇文章主要介紹了Vue Promise解決回調(diào)地獄問(wèn)題,總的來(lái)說(shuō)這并不是一道難題,那為什么要拿出這道題介紹?拿出這道題真正想要傳達(dá)的是解題的思路,以及不斷優(yōu)化探尋最優(yōu)解的過(guò)程。希望通過(guò)這道題能給你帶來(lái)一種解題優(yōu)化的思路2023-01-01vue中如何使用lodash的debounce防抖函數(shù)
防抖函數(shù) debounce 指的是某個(gè)函數(shù)在某段時(shí)間內(nèi),無(wú)論觸發(fā)了多少次回調(diào),都只執(zhí)行最后一次,在Vue中使用防抖函數(shù)可以避免在頻繁觸發(fā)的事件中重復(fù)執(zhí)行操作,這篇文章主要介紹了vue中使用lodash的debounce防抖函數(shù),需要的朋友可以參考下2024-01-01詳解Vue demo實(shí)現(xiàn)商品列表的展示
這篇文章主要介紹了Vue demo實(shí)現(xiàn)商品列表的展示,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05Vue+WebSocket頁(yè)面實(shí)時(shí)刷新長(zhǎng)連接的實(shí)現(xiàn)
最近vue項(xiàng)目要做數(shù)據(jù)實(shí)時(shí)刷新,數(shù)據(jù)較大,會(huì)出現(xiàn)卡死情況,所以本文主要介紹了頁(yè)面實(shí)時(shí)刷新長(zhǎng)連接,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-06-06詳解Vue如何將多個(gè)空格被合并顯示成一個(gè)空格
這篇文章主要為大家詳細(xì)介紹了在Vue中如何將多個(gè)空格被合并顯示成一個(gè)空格,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-04-04vue 組件數(shù)據(jù)加載解析順序的詳細(xì)代碼
Vue.js的解析順序可以概括為:模板編譯、組件創(chuàng)建、數(shù)據(jù)渲染、事件處理和生命周期鉤子函數(shù)執(zhí)行,接下來(lái)通過(guò)本文給大家介紹vue 組件數(shù)據(jù)加載解析順序的完整代碼,感興趣的朋友跟隨小編一起看看吧2024-03-03Vuex中this.$store.commit()和this.$store.dispatch()區(qū)別說(shuō)明
這篇文章主要介紹了Vuex中this.$store.commit()和this.$store.dispatch()區(qū)別說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-04-04vue.js實(shí)例對(duì)象+組件樹(shù)的詳細(xì)介紹
這篇文章主要介紹了vue.js實(shí)例對(duì)象+組件樹(shù)的相關(guān)資料,需要的朋友可以參考下2017-10-10vue-cli webpack2項(xiàng)目打包優(yōu)化分享
下面小編就為大家分享一篇vue-cli webpack2項(xiàng)目打包優(yōu)化,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-02-02