javascript - Vuejs:Vue.component 似乎不起作用
问题描述
我不确定我做错了什么,但我声明的 vuejs 组件不起作用。
<script src="https://unpkg.com/vue"></script>
<div id="app">
<p>{{ message }}</p>
</div>
<ol>
<!-- Create an instance of the todo-item component -->
<todo-item></todo-item>
</ol>
JavaScript:
var a = new Vue({
el: '#app',
data: {
message: 'Hello Vue.js!'
}
})
Vue.component('todo-item',
{
template: '<li>This is a todo</li>'
})
我正在使用 JsFiddle,消息部分确实显示了数据,但 todo-item 没有显示任何内容。
解决方案
Vue.component
必须先调用才能 new Vue
让 Vue 实例使用该组件。从文档中(诚然,这并不是很清楚):
这些组件是全局注册的。这意味着它们可以在注册后创建的任何根 Vue 实例(新 Vue)的模板中使用。
Vue.component('todo-item', {
template: '<li>This is a todo</li>'
})
var a = new Vue({
el: '#app',
data: {
message: 'Hello Vue.js!'
}
})
#app
正如 CUGreen 的回答所指出的那样,您的应用程序代码必须全部在div 内。
推荐阅读
- java - 我需要使用 java 在 2D 矩阵中找到第一个最大元素,但代码似乎不像我想要的那样工作。谁能帮我?
- reactjs - 如何在 React 应用程序中使用 Ant 设计框架验证表单输入字段
- asp.net-core - 无需 Web 交互的 IdentityServer 登录
- reactjs - 从网络预览/响应 Mapbox-gl 中检索数据
- groovy - 查找所有或收集 groovy JSON 解析器
- javascript - 如何将 JavaScript 变量传递给 PHP 文件
- python - Python用字符串替换列表中的空列表以避免IndexError:列表索引超出范围
- c# - 尝试让 DHL 接口运行时出现身份验证错误
- c# - 为什么 DeviceInformation.Name 不显示正确的名称
- xamarin - 我应该使用依赖注入将带有常量的类引入我的 Xamarin Forms 应用程序还是有更好的方法?