无法将道具分配给数据
can not assign props to data
这是一个简单的组件。我正在尝试将 props
分配给 data
,正如 docs 所说的那样。 (initialData
来自 vuex 和数据库)
<template>
<section>
{{ initialData }}
{{ privateData }}
</section>
</template>
<script>
export default {
name: 'someName',
props: [
'initialData'
],
data() {
return {
privateData: this.initialData
};
}
};
但是,问题是 initialData
是可以的,但是 privateData
只是一个空对象 {}
。
最奇怪的是,如果我再次保存我的文件,那么 webpack 热重新加载东西,privateData
也会得到我需要的正确数据。
这是父级:
<template>
<section v-if="initialData">
<child :initial-data="initialData"></micro-movies>
</section>
</template>
<script>
export default {
name: 'parentName',
data() {
return {};
},
computed: {
initialData() {
return this.$store.state.initialData;
}
},
components: {
child
}
};
</script>
我知道这是关于动态获取数据的。因为如果我手动将父对象中的 initialData
更改为某个对象,它就可以正常工作。
数据函数仅在组件创建时被调用一次。如果 initialData
在该时间点未填充,则 privateData
将始终为空。这就是为什么您可能想要使用计算 属性 或观看 属性.
这是一个简单的组件。我正在尝试将 props
分配给 data
,正如 docs 所说的那样。 (initialData
来自 vuex 和数据库)
<template>
<section>
{{ initialData }}
{{ privateData }}
</section>
</template>
<script>
export default {
name: 'someName',
props: [
'initialData'
],
data() {
return {
privateData: this.initialData
};
}
};
但是,问题是 initialData
是可以的,但是 privateData
只是一个空对象 {}
。
最奇怪的是,如果我再次保存我的文件,那么 webpack 热重新加载东西,privateData
也会得到我需要的正确数据。
这是父级:
<template>
<section v-if="initialData">
<child :initial-data="initialData"></micro-movies>
</section>
</template>
<script>
export default {
name: 'parentName',
data() {
return {};
},
computed: {
initialData() {
return this.$store.state.initialData;
}
},
components: {
child
}
};
</script>
我知道这是关于动态获取数据的。因为如果我手动将父对象中的 initialData
更改为某个对象,它就可以正常工作。
数据函数仅在组件创建时被调用一次。如果 initialData
在该时间点未填充,则 privateData
将始终为空。这就是为什么您可能想要使用计算 属性 或观看 属性.