为什么??
来源:4-3 组件参数校验与非 props 特性

陈志强的夏天
2018-04-28
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="./vue.js"></script>
</head>
<body>
<div id="app">
<count child='world'></count>
</div>
<script>
Vue.component("count", {
props:['child'],
template:"<div><p>hello{{child}}</p></div>"
})
var vm=new Vue({
el:"#app",
})
</script>
</body>
</html>
这里 :child='world'为什么会报错?然而:child='123'不抱错 ?? :child='123'与:child=123有区别么?
3回答
-
orangecat00
2018-07-08
问题1. :child='world' 如果有冒号,那么引号中的则为js表达式,这里world并字符串,而是属性或方法,而并未在组件中找到,所以报错为未定义。而:child='123' , 123同样是js表达式,即Number,所以不会报错。
问题2::child='123' ,:child=123, 传的都是数字
00 -
Zlear
2018-05-02
:content="zlear"会报未定义错,因为冒号后应该是表达式,而zlear是个字符串,正确的应该写成:content=" 'zlear' ",这样传的就是string了;
同理,:content="123",传的是Number,:content=" '123' "传的是string00 -
Dell
2018-04-29
你去看一下“非props特性”那一节课,反复看,我里面讲的很明白了,精确到字,仔细听
00
相似问题