2 回答

TA貢獻2條經驗 獲得超2個贊
以下表單指input或el-input這些,而el-form或el-form-item則會直接寫明。
1、確實,在表單中有個v-model綁定后,el-form的model有沒有一點都不影響,你可以刪除不寫。
2、目前el-form的model主要用表單驗證的,也就是配合el-form的rules和el-form-item的prop來使用的。不信的話,你可以增加一個rules和prop(為了調用驗證方法,也el-form也加一個ref屬性,相當于id或者class選擇器的意思),但是不寫model,然后驗證的話,會提示缺少model,導致無法驗證成功。
所以el-form的model干嘛用的?目前看來主要是為了配合表單驗證。里面的邏輯大概是,在el-form-item上寫一個prop,這個prop左手對應著數據源(即用model.prop找到對應的數據源),右手對應著驗證規則(即用rules.prop找到對應的規則)。然后就快樂地驗證去了。
至于為什么不能將el-form的model+el-form-tem的prop這樣的組合和表單中的v-model的用法合二為一,最直觀的原因就是:這幾個玩意是加在不同的標簽上的啊,一種是針對表單的雙向綁定,一種是針對el-form和el-form-item的驗證(雖然這個驗證的數據源最終就是表單那邊雙向綁定得來的);其次,你感覺一下,一邊是利用雙向綁定提供數據,另一邊是拿到數據和規則進行驗證,這兩邊沒有很死板地捆綁在一起啊,類似于耦合度不高,未來自定義或者修改的話會方便很多。
添加回答
舉報