第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

對(duì)element-ui的el-dialog進(jìn)行封裝,應(yīng)該怎樣處理visible?

對(duì)element-ui的el-dialog進(jìn)行封裝,應(yīng)該怎樣處理visible?

慕森王 2019-07-06 23:48:12
前端到處需要用到e-dialog,對(duì)dialog的樣式,close處理,visible處理的重復(fù)性代碼很多,打算對(duì)其進(jìn)行進(jìn)一步封裝,寫一個(gè)我自己的at-dialog,里頭的slot留給el-dialog,然后在index.vue的子組件testAtDialog.vue里面使用這個(gè)at-dialog。相當(dāng)于用了三層父子關(guān)系,這個(gè)visible怎么樣處理才能管用?下面的代碼沒法把el-dialog顯示出來:index.vue:其中的testDialogVisible在index.vue的data中定義:testDialogVisible:{bol:false},testAtDialog.vue:Thisisatdialog.exportdefault{name:'testAtDialog',props:['visible'],data(){return{dialogVisible:{bol:false},}},watch:{visible:{handler:function(val,oldval){this.dialogVisible.bol=valif(val.bol){this.init()}},deep:true,immediate:true},},methods:{init(){console.log('init')},}}最后是封裝了el-dialog的組件at-dialog:exportdefault{name:'atDialog',props:{title:{type:String,default:this._("NoTitle"),},size:{type:String,default:"small"},visible:{type:Object,default:{bol:false}}},data(){return{width:"600px",};},watch:{visible(){console.log('watchvisible',this.visible)},size(){switch(this.size){case"auto":this.width=""break;case"medium":this.width="800px"break;case"small":this.width="600px"break;case"mini":this.width="400px"break;}},},methods:{closeDialog(){this.visible.bol=false//this.$emit('update:show',false)},}};
查看完整描述

2 回答

?
富國滬深

TA貢獻(xiàn)1790條經(jīng)驗(yàn) 獲得超9個(gè)贊

props:{
visible:{
type:Boolean,
default:false
},
},
computed:{
mVisible:{
get(){
returnthis.visible
},
set(s){
this.$emit('update:visible',s);
}
}
}
                            
查看完整回答
反對(duì) 回復(fù) 2019-07-06
  • 2 回答
  • 0 關(guān)注
  • 3135 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)