如果你来自knockoutJs的背景,如果不将绑定指定到一个元素,则可以使用模型覆盖整个页面元素。例如,我可以在点击事件发生时使一个div可见。我正在学习VueJs,并从文档中看到,vue实例需要您用el指定一个元素。
像这样:
var app = new Vue({
el: '#app',
data: {
message: 'Hello Vue!'
}
})
如果你来自knockoutJs的背景,如果不将绑定指定到一个元素,则可以使用模型覆盖整个页面元素。例如,我可以在点击事件发生时使一个div可见。我正在学习VueJs,并从文档中看到,vue实例需要您用el指定一个元素。
像这样:
var app = new Vue({
el: '#app',
data: {
message: 'Hello Vue!'
}
})
<body>
内的第一个元素上。Vue 不允许你绑定到 body
,因为还有其他很多东西会在其上添加事件监听器。props
传递内容到组件中。当您开始将代码重构为组件时,如果您将所有状态存储在 store 中(在 vue 外部),那么您的工作将变得轻松得多,并直接将您的组件与 store 进行通信(将 store 放置在所有组件的 data
模块中)。此模式(MVVM)非常好,因为许多状态元素最终将在屏幕上具有多个表示,并且具有“单一的真相来源”,归一化,与 store 中项目之间的关系最小化,可以大大减少大多数常见目的的复杂性和代码量。它让您独立于 DOM 结构应用程序状态。<body>
<div id="#app">
<p v-if="showMessage">{{message}}</p>
<button v-on:click="showMessage = !showMessage"></button>
</div>
</body>
var app = new Vue({
el: '#app',
data: {
message: 'Hello Vue!',
showMessage: true
}
})
#app
会是body
的直接子元素,包裹除了script
标签以外的所有其他元素。 - Marty