Tar*_*epp 13 javascript vue.js vuejs2 vuetify.js
我正在尝试使用Vuetify,v-text-field autofocus但它只是第一次使用.关闭对话框后,它不再起作用了.
这就是我想要做的:
<v-text-field ref="focus" autofocus></v-text-field>
Run Code Online (Sandbox Code Playgroud)
谷歌搜索时我发现这是一个在某些版本中修复的错误,但他们有临时解决方案我也尝试过:
watch: {
dialog: (val) ->
if !val
debugger
requestAnimationFrame( =>
@$refs.focus.focus()
)
}
Run Code Online (Sandbox Code Playgroud)
我做错了什么或者它仍然是一个错误?设置断点我看到它在那一刻停止了.任何人都能引导我走向正确的方向吗?
我唯一的区别是我使用的是Vuex,对话框变量在Vuex存储中.对话框是getter/setter.
dialog:
get: ->
return this.$store.state.my_store.isDialogOpen
set: (value) ->
this.$store.commit('my_store/MY_MUTATION', value)
Run Code Online (Sandbox Code Playgroud)
Tar*_*epp 15
对我来说唯一有用的是v-if="dialog"因为自动对焦道具只适用于初始加载,这就是为什么它仅在我第一次打开对话框时才可用.
因此,在对话框中使用自动对焦的工作v-tex字段看起来像这样:
<v-text-field label="Label" v-if="dialog" autofocus></v-text-field>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3639 次 |
| 最近记录: |