为什么??

来源: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, 传的都是数字

0
0

Zlear

2018-05-02

:content="zlear"会报未定义错,因为冒号后应该是表达式,而zlear是个字符串,正确的应该写成:content=" 'zlear' ",这样传的就是string了;
同理,:content="123",传的是Number,:content=" '123' "传的是string

0
0

Dell

2018-04-29

你去看一下“非props特性”那一节课,反复看,我里面讲的很明白了,精确到字,仔细听

0
0

Vue2.5-2.6-3.0开发去哪儿网App 零基础入门到实战

课程紧跟Vue3版本迭代,企业主流版本Vue2+Vue3全掌握

10717 学习 · 8204 问题

查看课程