我有一个单一的文件组件header.vue
:如何将数据传递给Vue.js中的单个文件组件?
<template>
<h1>{{text}}</h1>
</template>
<script>
export default {
data() {
return {
text: 'Header text',
};
},
};
</script>
我需要它在我的代码如下
const Header = require('components/header.vue');
,并称之为:
const header = new Vue({
el: '#header',
data: {
text: 'New header text',
},
render: h => h(Header),
});
组件呈现,但文字说Header text
而不是New header text
。为什么?
要由其他组件等动态设置标题标题我想?或者你想要达到什么目的? –
您正在创建一个新的Vue组件,该组件将Header组件作为其子组件呈现。来自父组件的数据不会以这种方式影响孩子的数据。你可以'Vue.extend()'Header组件,然后用重写的数据属性实例化*。 –
@DecadeMoon所以你的意思是'const Header = Vue.extend(require('components/header。vue'));'然后'new Header({el:...,data:{...}});',对吗?这有效,但它看起来有点奇怪,扩展了导入。这真的有必要吗? – Mikko