带有下划线的 Vue 属性无效

Dis*_*urb 5 properties vuejs2

我正在做一些测试,我注意到当我使用下划线时我的属性无效。

例子:

new Vue({
el : "#form",

data: {
    errors: [],
    _username: '',
    _password: ''
});
Run Code Online (Sandbox Code Playgroud)

在 html 文件中:

<input class="uk-input" type="text" v-model="_username" >
<input class="uk-input" type="password" v-model="_password">
Run Code Online (Sandbox Code Playgroud)

使用上面的代码,应用程序将不会呈现。如果我删除下划线它会起作用,有人知道为什么会发生这种情况吗?

Phi*_*hil 5

答案可以在文档中找到

与启动属性_$被在Vue公司的实例代理,因为它们可能与Vue公司的内部属性和API方法相冲突。您将必须访问它们vm.$data._property

在您的模板中,您必须引用$data._username/ $data._password,例如

<input class="uk-input" type="text" v-model="$data._username" >
<input class="uk-input" type="password" v-model="$data._password">
Run Code Online (Sandbox Code Playgroud)

演示在这里~ https://jsfiddle.net/9bzxuecj/2/

  • TBF 为您的库内部使用保留通用语言模式是令人惊讶的,而不是大多数开发人员期望在一个不平凡的框架中遇到的事情...... (2认同)