關(guān)于 ant-design-vue resetFields 失效
背景:
遇到這樣的問題使用ant-design-vue useForm
來制作表單的時(shí)候,resetFields()失效
場景:編輯
-賦值新增
-初始值(問題點(diǎn):新增的時(shí)候他就不初始化
)
方案:
1、調(diào)用resetFields()
傳參
2、要么使用reactive
明確定義初始值
解釋:
首先我這里講一下源代碼中的邏輯
useForm代碼
1、首先我講一下我這里為什么不生效,因?yàn)槲以诙x初始值的時(shí)候,并沒有給準(zhǔn)確的modelRef
定義
const modelRef = reactive({} as SomethingInterface);
因?yàn)槲沂鞘褂?code>typescript不想給他一個(gè)一個(gè)定義,所以根據(jù)源碼看的話,我的initialModel
就是個(gè){}
所以我每次調(diào)用resetFields()
的時(shí)候都是 modelRef
, 所以他就沒變
2、 為了解決這個(gè)問題,我這里是有3個(gè)方案文章來源:http://www.zghlxwxcb.cn/news/detail-798714.html
- 第一是我沒看源碼前,直接粗暴的方式
// 清空對象,將其屬性設(shè)置為空對象
Object.keys(obj).forEach(key => delete obj[key as keyof typeof obj]);
- 第二是我看源碼后,
resetFileds()
的時(shí)候傳值resetFileds({name:""})
- 第三是按照官網(wǎng)文檔一樣,老老實(shí)實(shí)的定好
文章來源地址http://www.zghlxwxcb.cn/news/detail-798714.html
好了, 我這里說完了,繼續(xù)敲代碼
到了這里,關(guān)于關(guān)于 ant-design-vue resetFields 失效的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!