Vue.js使用props传递数据驼峰式与短横线隔
2015-11-13 17:15
1046 查看
正在拜读Vue.js官网上的教程。
<div id="prop-example-1">
<child my-message='hello!'></child>
</div>js代码:
Vue.component('child',{
props:['myMessage'],
template:'<span>{{ myMessage }}</span>'
});
new Vue({
el:'#prop-example-1'
});
上面的代码作用是将my-message的值传递给自定义组件child中的myMessage。然而my-message和myMessage变量名并不相同,这是怎么了?
官网上提到,html语言不区分大小写,所以在处理my-message时会在js代码中找寻myMessage(猜的...)。
这里就有一个坑了,如果将js代码中的myMessage改为my-message,页面则会输出NaN,并且没有任何警告。
情况一:
直接上代码<div id="prop-example-1">
<child my-message='hello!'></child>
</div>js代码:
Vue.component('child',{
props:['myMessage'],
template:'<span>{{ myMessage }}</span>'
});
new Vue({
el:'#prop-example-1'
});
上面的代码作用是将my-message的值传递给自定义组件child中的myMessage。然而my-message和myMessage变量名并不相同,这是怎么了?
官网上提到,html语言不区分大小写,所以在处理my-message时会在js代码中找寻myMessage(猜的...)。
这里就有一个坑了,如果将js代码中的myMessage改为my-message,页面则会输出NaN,并且没有任何警告。
情况二:
html代码:<div id="dynamic-prop"> <input v-model="parentMsg" number> <br> <child-dynamic v-bind:my-message="parentMsg"></child-dynamic> </div>js代码:
new Vue({ el:'#dynamic-prop', data:{ parentMsg:0 }, components:{ 'child-dynamic':{ props:{ myMessage: Number, }, template:'<span>{{ myMessage }}</span>' } } });注意,在html代码中自定义了组件child-dynamic,在js代码的components构造器中使用'child-dynamic'(加单引号了)来指定child-dynamic组件,这里也可以在js中使用childDynamic(没有单引号)来指定child-dynamic组件
相关文章推荐
- 常见MFC UI界面库
- IOS学习之 UIAlertController
- Ngui忽略ui界面的物体
- ios开发系列-UITableController-搜索功能
- handler机制的原理
- 为何UE复制粘贴不能用了?
- UITableCell 的删除崩溃原因
- IOS 9 UITableView整理
- UIView的动画
- POJ---1986-Distance Queries(LCA-Tarjan)
- UISegmentControl 字体加粗
- iOS多线程三种方式:NSThread,NSOperationQueue,GCD
- 【转】request和response的页面跳转传参
- 验证Request传过来的值是否为空
- 由cell上的button确定cell的indexPath
- UICollectionView(网格视图)
- 改变UITableViewCell按下去的颜色
- iOS开发之UIButton(自用贴)
- Android UI开发: 横向ListView(HorizontalListView)完整实现 (附源码下载)
- 表格视图UITableView