vue component为什么官网的自定义组件不显示及各种自定义组件写法?
2017-11-08 17:16
555 查看
基于Vue2的官网。
官网这样写的不显示:因为你还没有一个vue实例对象,也就是主模板,也没有挂载到文档中。因为没有新建Vue对象,浏览器并不会自动识别Vue对象里有的方法,所以要new一个。el就是相当于Js中的element
<ol id="todoItem1"> <!-- 创建一个 todo-item 组件的实例 --> <todo-item></todo-item> </ol> <ol id="todoItem"> <!-- 创建一个 todo-item 组件的实例 --> <todo-item></todo-item> </ol> <script> //定义todo-item组件 Vue.component('todo-item', { template: '<li>这是个待办事项</li>' }); //定义模板后,必须实例化,不然是不显示的。 var vm = new Vue({ el: '#todoItem1' }); new Vue({ el: '#todoItem' }); </script>
二:下面的写法也是可以的
<div id='app21'>
<v-header></v-header>
</div>
<script type="text/javascript">
Vue.component('vHeader', {
template: '<div>A custom component!</div>'
});
new Vue({
el:'#app21',
});
</script>
三:另外一种写法
<div id="component1"> <h1> 4000 ;这里是另外一个模板测试</h1> <global-component></global-component> <!-- 这里也插入了这个组件,全局注册的组件可以在所有晚于该组件注册语句构造的 Vue 实例中使用 --> </div> <div id="component2"> <h1>这里是模板测试</h1> <global-component></global-component> <!-- 使用自定义标签在 Vue.js 模板中插入组件,编译时,这部分内容会被替换为组件的内容 --> </div> <template id="global-template"> <!-- 此 DOM 元素的 innerHTML 作为全局注册组件的模板 --> <div> 组件内部 msg 文本内容为 {{msg}},和父组件无关!不信改改看:<!-- 和普通 Vue.js 模板一样,可以进行插值 --> <input type="text" v-model="msg" /> <!-- 和普通 Vue.js 模板一样,也可以进行表单数据绑定 --> </div> </template> <script type="text/javascript"> Vue.component("global-component",{ //使用语法糖(只使用扩展实例选项)全局注册组件 data: function(){ //Vue 扩展实例构造器的 data 选项,必须是一个工厂函数,返回数据对象 return { msg: 'Hi, Vue.js' } }, template: "#global-template" //template 是模板,可以是包含 HTML 代码的字符串,也可以是 # + id,如果是 # + id,则会使用该选择子匹配的 DOM 元素的 innerHTML 作为模板 }); new Vue({ el: "#component1" }); new Vue({ el: "#component2" }); </script>
相关文章推荐
- Android自定义组件,实现图片和文字同时显示
- [自定义组件之一]利用calyer的遮罩处理圆形图片显示
- FlexPaper是一个开源轻量级的在浏览器上显示各种文档的组件
- Android中使用XML自定义组件各种状态下的背景图片
- android 让TextView支持的Html标签实现自定义时钟显示组件DigitalClock
- flexpaper 开源轻量级的在浏览器上显示各种文档的组件
- 为什么自定义菜单创建成功了,在微信客户端的公众账号上却不显示?
- vue 自定义组件 v-model双向绑定、 父子组件同步通信的多种写法
- 自定义天气显示小组件Widget
- 自定义组件listview gridview 在ScrollView内正常显示
- 第二部分基本组件---2.1SQLite部分应用-自定义database中取出数据,listView做界面显示示例
- 如何自定义按钮的各种状态下的显示,
- 为什么我的自定义simpleadapter填充listview只显示第一行呢
- 关于自定义SeekBar写法以及seekbar不显示的问题
- flex 组件自定义显示上下左右边框
- Horizontalscrollview里添加一个布局,该布局里在添加一个自定义的View,为什么View里用Canvas画图无法显示?
- 自定义UserControl的属性为什么不能在设计时显示在属性窗口中
- 地图组件上的自定义区域叠加层显示 ArcGis + GeoJson
- flex自定义组件如何在设计时显示预期结果/已添加控件
- Horizontalscrollview里添加一个布局,该布局里在添加一个自定义的View,为什么View里用Canvas画图无法显示?