需求彈窗打開時某個 el-Input 擷取焦點,使用了 this.$refs['name'].focus() 無效。
查詢資料後發現問題出在這裡:
因為ref本身是作為渲染結果被建立的,在渲染的時候是不能通路的,因為他們還不存在!
如果此時代碼是需要這樣來寫代碼,那麼你可以在DOM渲染完畢後再進行擷取
解決方法:
this.$nextTick(() => {
this.$refs['name'].focus() //DOM渲染完畢後就能正常擷取了
})
需求彈窗打開時某個 el-Input 擷取焦點,使用了 this.$refs['name'].focus() 無效。
查詢資料後發現問題出在這裡:
因為ref本身是作為渲染結果被建立的,在渲染的時候是不能通路的,因為他們還不存在!
如果此時代碼是需要這樣來寫代碼,那麼你可以在DOM渲染完畢後再進行擷取
解決方法:
this.$nextTick(() => {
this.$refs['name'].focus() //DOM渲染完畢後就能正常擷取了
})