我刚刚安装了 Vue,并且一直在遵循一些教程来使用 vue-cli webpack 模板创建项目。当它创建组件时,我注意到它将我们的数据绑定在以下内容中:
export default { name: 'app', data: [] }
而在其他教程中,我看到数据来自:
new Vue({ el: '#app', data: [] )}
有什么区别,为什么两者之间的语法看起来不同? 我无法从 vue-cli 生成的 App.vue 使用的标签内部获取“新 Vue”代码。
当您声明:
new Vue({ el: '#app', data () { return {} } )}
这通常是应用程序其余部分的根 Vue 实例。这会挂起在 html 文档中声明的根元素,例如:
<html> ... <body> <div id="app"></div> </body> </html>
另一种语法是声明一个可以在以后注册和重用的组件。例如,如果您创建单个文件组件,例如:
// my-component.js export default { name: 'my-component', data () { return {} } }
您可以稍后导入它并像这样使用它:
// another-component.js <template> <my-component></my-component> </template> <script> import myComponent from 'my-component' export default { components: { myComponent } data () { return {} } ... } </script>
此外,请务必将您的data属性声明为函数,否则它们不会是反应性的。
data