Vue $ refs和烤肉串案

时间:2016-12-19 15:42:13

标签: vue.js vuejs2

在第1节中,可以这样做:

vm.$refs.testApp;

然后像这样引用它:

<app ref="test-app"></app>

但是在vue 2中,ref的语法已更改为:

vm.$refs.testApp

不再引用它
<app ref="testApp"></app> 

相反,它只适用于:

attrib +r "$(TargetPath)"
del /q "$(TargetDir)"
attrib -r "$(TargetPath)"

在标准DOM中的内容是不允许的。这是一个错误吗?可以不再使用烤肉串吗?

1 个答案:

答案 0 :(得分:8)

由于语法已从命名空间元素属性(即v-ref:foo-bar)更改为普通键值对属性(即ref="fooBar"),因此隐式kebab-case- to-camel-case转换不再适用,因为引用名称是普通字符串,并且不受必须符合必需的小写烤肉串HTML语法的限制。

换句话说,你可以用任何字符串识别一个ref,所以Vue操纵它是没有意义的。请查看此CodePen,了解我的意思。

但是,基本上,普通的字符串引用值意味着您可以定义这样的引用:

<div id="app" ref="test ** app!"></div>

并从Vue引用它:

this.$refs['test ** app!']

简而言之,不,这不是一个错误,但不是,自动烤肉串转换不再发生。