【发布时间】:2017-08-12 23:55:17
【问题描述】:
假设这个组件:
<template>
<div class="container">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Example Component</div>
<div class="panel-body">
I'm an example component!
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
items: [
{ message: 'Test 1' },
{ message: 'Test 2' },
{ message: 'Test 3' },
]
}
},
mounted() {
console.log('Component mounted.')
}
}
</script>
这是我的app.js:
Vue.component('example', require('./components/Example.vue'));
const app = new Vue({
el: '#app'
});
现在,我需要像这样打印示例组件中的所有items:
<ul id="example-2">
<li v-for="(item, index) in items">
@{{ index }} - @{{ item.message }}
</li>
</ul>
它返回给我以下错误:
[Vue 警告]:实例上未定义属性或方法“items” 但在渲染期间引用。确保声明反应数据 数据选项中的属性。 (见于)
主要问题是:
如何将数据从子组件传递到 Root ?
任何帮助将不胜感激。
【问题讨论】:
-
您是否希望父级能够指定子级应该如何布置数据?比如,父组件应该指定你的组件的
panel-body?