iview table render集成switch開(kāi)關(guān)的實(shí)例
今天想要分享的是iview table render集成switch開(kāi)關(guān)修改table表格的值,看文檔記得看2.0的,不注意打開(kāi)就成1.0然后用上了一直沒(méi)有效果又沒(méi)有找出原因。給出的只是一種寫(xiě)法思路,具體自己集成。
一、效果如下
即是打開(kāi)處理switch開(kāi)關(guān),對(duì)應(yīng)修改為已處理狀態(tài),關(guān)閉switch開(kāi)關(guān),修改為未處理狀態(tài)。
二、template html寫(xiě)法
<span style="font-size:14px;"><Table highlight-row border :columns="columns1" :data="data1" ref="table" :height="tableHeight"></Table></span>
三、data寫(xiě)法,table render函數(shù)寫(xiě)法,
columns1: [{ fixed: 'right', title: 'Action', key: 'action', width: 250, align: 'center', render:(h, params) => { return h('div', [ h('Button', { props: { type: 'primary', size: 'small' }, style: { marginRight: '20px' }, on: { click: () => { this.show(params.index) } } }, '閱覽'), h('strong', { style: { marginRight: '5px' }, }, '處理'), h('i-switch', { //數(shù)據(jù)庫(kù)1是已處理,0是未處理 props: { type: 'primary', value: params.row.treatment === 1 //控制開(kāi)關(guān)的打開(kāi)或關(guān)閉狀態(tài),官網(wǎng)文檔屬性是value }, style: { marginRight: '5px' }, on: { 'on-change': (value) => {//觸發(fā)事件是on-change,用雙引號(hào)括起來(lái), //參數(shù)value是回調(diào)值,并沒(méi)有使用到 this.switch(params.index) //params.index是拿到table的行序列,可以取到對(duì)應(yīng)的表格值 } } }, ) ]); } }]
四、methods方法
//通過(guò)開(kāi)關(guān)狀態(tài)判斷值然后傳值進(jìn)行更新 switch(index) { //打開(kāi)是true,已經(jīng)處理1 if (this.data1[index].treatment == 1) { this.data1[index].treatment = 0 this.updateFeedbackMessage(this.data1[index].id, 'treatment', this.data1[index].treatment) } else { this.updateFeedbackMessage(this.data1[index].id, 'treatment', 1) } }, //更新反饋信息某一字段 updateFeedbackMessage(id, key, value) { var vm = this var data = { id: id } data[key] = value vm.$http.put('/v1/suggestion', data).then(function (response) { if (response.data.code == '000000') { vm.$Message.info('更新成功'); vm.getFeedbackMessages()//獲取table數(shù)據(jù)信息,這里調(diào)用是因?yàn)樾薷闹抵篑R上可以更新table值 } }).catch((error) => { console.log(error) }) }, //獲取所有反饋信息列表 getFeedbackMessages() { var vm = this var url = '/v1/suggestions?' url = url + "pageNum=" + this.pageNum + '&pageSize=' + this.pageSize if (this.createByValue != '') { url = url + '&createBy=' + this.createByValue } if (this.dealModelValue != '') { url = url + '&treatment=' + this.dealModelValue } this.$http.get(url).then(response => { if (response.data.code == '000000') { vm.data1 = response.data.data vm.pageTotal = parseInt(response.data.message) } }).catch(error => { console.log(error) }) },
注重思路,有問(wèn)題一起交流
以上這篇iview table render集成switch開(kāi)關(guān)的實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Vue Axios異步與數(shù)據(jù)類(lèi)型轉(zhuǎn)換問(wèn)題淺析
總的來(lái)說(shuō)這并不是一道難題,那為什么要拿出這道題介紹?拿出這道題真正想要傳達(dá)的是解題的思路,以及不斷優(yōu)化探尋最優(yōu)解的過(guò)程。希望通過(guò)這道題能給你帶來(lái)一種解題優(yōu)化的思路,Axios是一個(gè)開(kāi)源的可以用在瀏覽器端和Node JS的異步通信框架,主要作用就是實(shí)現(xiàn)AJAX異步通信2023-01-01VUE開(kāi)發(fā)一個(gè)圖片輪播的組件示例代碼
本篇文章主要介紹了VUE開(kāi)發(fā)一個(gè)圖片輪播的組件示例代碼,對(duì)圖片輪播效果感興趣的小伙伴們可以參考一下。2017-03-03vue-cli3+typescript初體驗(yàn)小結(jié)
這篇文章主要介紹了vue-cli3+typescript初體驗(yàn)小結(jié),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-02-02詳解Vue-cli3.X使用px2rem遇到的問(wèn)題
這篇文章主要介紹了詳解Vue-cli3.X使用px2rem遇到的問(wèn)題,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08Vue Router4中params傳參失效和報(bào)錯(cuò)問(wèn)題的解決方法
在使用vue-router4中params 進(jìn)行路由組件之間傳參,跳轉(zhuǎn)頁(yè)面接收不了并報(bào)錯(cuò),本文給大家介紹了Vue Router4中params傳參失效和報(bào)錯(cuò)問(wèn)題的解決方法,需要的朋友可以參考下2024-03-03vue 監(jiān)聽(tīng)窗口變化對(duì)頁(yè)面部分元素重新渲染操作
這篇文章主要介紹了vue 監(jiān)聽(tīng)窗口變化對(duì)頁(yè)面部分元素重新渲染操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-07-07Vue+scss白天和夜間模式切換功能的實(shí)現(xiàn)方法
這篇文章主要介紹了Vue+scss白天和夜間模式切換功能的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01