亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

老師請教一下 reset form 的時候沒有reset switch 開關的值,請問如果需要reset switch 組件應該怎么做呢?

如題,麻煩老師了。謝謝

正在回答

3 回答

同學你好,是具體哪一小節的內容呢?

0 回復 有任何疑惑可以回復我~
#1

isjia 提問者

老師, 5-2 新增期刊內容,這里面提到 reset form ,就是在關閉對話框的時候會進行表單重置,使用了element ui 的 `this.$refs.form.resetFields()` 這個用法,但是這個用法并不會 reset <el-switch> 這個組件。如果希望reset這個組件應該怎么寫?是不是把 temp.isActive 設置為false?
2020-09-23 回復 有任何疑惑可以回復我~

同學你好,感謝你的反饋,視頻中這里處理有不當之處,可做如下調整:

// src/view/content/List.vue

handAdd() {

????? this.dialogTitle = '添加內容'

????? this.showDialog = true

????? // 添加初始化操作

????? this.temp = {

????? ? ? id: null,

????? ? ? image: null,

????? ? ? type: null,

????? ? ? title: null,

????? ? ? content: null,

????? ? ? url: null,

????? ? ? pubdate: '',

????? ? ? status: 0,

????? }

},


resetFields()方法應該主要運用在頁面不發生跳轉或者交互的情況下“重置表單”這種場景。如果是關閉窗口的重置數據,還是需要我們手動賦值初始化一下,當然我們這里依然是需要通過調用這個方法來去除關閉前可能存在的表單校驗信息。


0 回復 有任何疑惑可以回復我~

試了試,增加在 resetForm 方法中增加?

this.temp['isActive'] = null

這樣可以重置<el-switch>這個組件的值。

另外就是在edit content的時候對話框如果按取消關閉的話,也需要重置一下 temp 對象的值,否則接下來在新增的話會帶入上次的值。

0 回復 有任何疑惑可以回復我~
#1

沁塵

可以這么操作,但不夠優雅,晚點我核實下。通常情況下,this.temp作為form表單的model的值傳給表單組件之后,表單組件內部其實會生成一份副本,調用resetFields()方法的時候,會去拿這份副本實現表單初始化的效果。這里的el-switch沒有初始化,那可能是在給this.temp 初始化的時候賦值上有點問題。
2020-09-23 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

老師請教一下 reset form 的時候沒有reset switch 開關的值,請問如果需要reset switch 組件應該怎么做呢?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號