这是我的组件。
el.focus()
在插入时有效,但我在控制台上获得了[Vue warn]: Property or method "v" is not defined on the instance but referenced during render
。
如何删除警告?
<script>
export default {
directives: {
focus: {
inserted (el) {
el.focus()
}
}
}
}
</script>
<style lang="stylus" scoped>
input
width: 300px
height: 30px
border: 1px solid #000
</style>
<template lang="jade">
div
input(v-focus)
</template>
答案 0 :(得分:4)
当你将一个空属性传递给jade时,据我所知,它在纯HTML中解释的是attribute="attribute"
。您的案例中的实际HTML是v-focus="v-focus"
,vue将其解释为使用不存在的属性v
的表达式。
您可以尝试input(v-focus="true")
,因为传递给该指令的值并不重要。