<!DOCTYPE html>
<html lang="cmn-hans">
<head>
<meta charset="utf-8">
<meta http-equiv=X-UA-Compatible content="IE=edge,chrome=1">
<meta name="renderer" content="webkit">
<!-- 必选 响应式 -->
<script src="https://cdn.bootcss.com/vue/2.5.13/vue.min.js"></script>
<title>Vue component组件</title>
</head>
<body>
<h3>Vue component组件</h3>
<hr>
<div id="app">
<!-- <local :here="local"></local> -->
<local :here="local"></local>
<remote></remote>
</div>
<script>
var app = new Vue({
el: "#app",
data:{
local:'china',
remote:'USA'
},
// <!-- 定义局部组件 -->
components: {
'remote':{
template:`<p>我是局部组件remote来自{{remote}}</p>`,
},
'local': {
template: `
<div style="color:green">
我是局部组件local,来自{{here}}
</div>
`,
//选项props 数值
props:['here'],
},
}
});
</script>
</body>
</html>
控制台报错:
Property or method "remote" is not defined on the instance but referenced during render. Make sure that this property is reactive, either in the data option, or for class-based components, by initializing the property.
remote没有定义。
这个
remote
是remote
组件里面绑定的那个值,因为你没有传数据进去,这是我修改你那个之后的代码,直接复制粘贴你就知道哪里错了,希望能帮助到你: