vue props传值失败 输出undefined的解决方法
作者:不垢 发布时间:2024-05-05 09:09:51
标签:vue,props,undefined
如果在prop中传的值为一个没有使用特殊命名规则的变量如:(type),可以顺利传值:
<code class="language-html"><div id="app">
<test :type="type"></test>
</div>
Vue.component("test", {
props: ['type'],
template: '<div @click="a">我是按钮{{type}}</div>',
methods: {
a() {
console.log(this.type);
}
}
});
var app = new Vue({
el: '#app',
data: {
type: 'test'
}
});</code>
而当这个变量为驼峰命名法如:(selectName),就会传不过去:
<div id="app">
<test :selectName="selectName"></test>
</div>
Vue.component("test", {
props: ['selectName'],
template: '<div @click="a">我是按钮{{selectName}}</div>',
methods: {
a() {
console.log(this.selectName);
}
}
});
var app = new Vue({
el: '#app',
data: {
selectName: 'test'
}
});
解决方法是把selectName标签改为select-Name:
<div id="app">
<test :select-Name="selectName"></test>
</div>
Vue.component("test", {
props: ['selectName'],
template: '<div @click="a">我是按钮{{selectName}}</div>',
methods: {
a() {
console.log(this.selectName);
}
}
});
var app = new Vue({
el: '#app',
data: {
selectName: 'test'
}
});
总结:如果为驼峰命名法传递的话,html不区分大小写(所有的都会转换为小写),所以testName 在html表现为 :test-name ,需要注意的是vue中使用props传递时最好不要用横杆如select-name 的写法,因为使用的时候this.select-name中的横杠会认为它是减号,导致辨认不出来。在定义事件的时候最好命名都为小写,如
this.$emit("selectchange","data");
不要写成
this.$emit("selectChange","data");
html同样认不出来,比较好的方式是这种
this.$emit("select-change","data");
来源:https://blog.csdn.net/qq_32921921/article/details/80610523


猜你喜欢
- 安装SDK:pip install baidu-aip如果在pycharm里也可以在setting----Project Interpret
- 一、用户管理在mysql库里有个user表可以查看已经创建的用户1.创建MySQL用户注意:MySQL中不能单纯通过用户名来说明用户,必须要
- JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,它采用完全独立于语言的文本格式,可替换XML成
- 改变图像中物体对象(像素)之间的空间关系。平移# 定义平移矩阵,需要是numpy的float32类型# x轴平移50,y轴平移80, 2*3
- INSTR (源字符串, 目标字符串, 起始位置, 匹配序号) 在Oracle/PLSQL中,instr函数返回要截取的字符串在源字符串中的
- 本文为大家分享了Centos7.3下mysql5.7.18的安装,和修改初始密码,供大家参考,具体内容如下1、官方安装文档http://de
- 别人复制你网站的文章时自动加上注释,这个功能你在很多网站应该都有体会过,当我们复制一段内容时,就自动在文章后面加上了网站的一些
- 本文实例讲述了Symfony模板的快捷变量用法。分享给大家供大家参考,具体如下:在模板里,有一些symfony变量可以直接使用。通过这些快捷
- 安装python虚拟环境核心目的就是为了复制一个python环境,这样新项目下载的所有包,都会存放在虚拟环境下的python site-pa
- 本文实例讲述了JS实现利用两个队列表示一个栈的方法。分享给大家供大家参考,具体如下:先看原理图:理清楚思路,再动笔写:<!DOCTYP
- selenium+python,使用webdriver的截图函数get_screenshot_as_file()截图,代码如下:from s
- 一、报错: 「Can't swap PDO instance while within transaction」通过查询 Larav
- 本文实例讲述了php实现mysql备份恢复分卷处理的方法。分享给大家供大家参考。具体分析如下:分卷处理就是把握们要处理的数据分成一个个小文件
- (wuhen注:document.all是ie特有的属性,不是万维网标准) 当页面上的控件同名且多个的时候,你首先做的是什么?判断长度?的确
- 启发式评估法(Heuristic Evaluation)是一种用来发现用户界面设计中的可用性问题从而使这些问题作为再设计过程中的一部分被重视
- 训练好了model后,可以通过python调用caffe的模型,然后进行模型测试的输出。本次测试主要依靠的模型是在caffe模型里面自带训练
- 如下所示:a, b, c = 1, 2, 3 # 1.常规 if a>b: &nbs
- 1、slice 方法 (Array) 返回一个数组的一段。 arrayObj.slice(start, [en
- YAML 是 "YAM
- 其实所有的死锁最深层的原因就是一个:资源竞争。表现一:一个用户A 访问表A(锁住了表A),然后又访问表B