Vuejs:如何在创建的钩子中获取计算属性

zm1*_*m10 8 vue.js computed-properties

是否可以在创建的钩子中获取计算属性值?我当前的实现不起作用。我的理解是首先调用 created 钩子,这将调用我的异步方法,而异步方法需要计算属性,但是当计算属性可用时,已使用“undefined”参数执行了 created 钩子。

请建议我如何使计算属性可用于创建的钩子方法。

created() {
        this.fetchPropertyOptions();
},
computed: {
    propertyList() {
        return this.data.value;
    },
},
methods: {
    async fetchPropertyOptions() {
        this.propertyOptionsMap = await api.GetOptions(this.propertyList);
    },
}
Run Code Online (Sandbox Code Playgroud)

Mar*_*Dix 13

Vue 组件的创建经历了不同的生命周期。文档的生命周期图部分有一个很好的图表。

从上到下阅读上面提到的图表,您会注意到created您在示例中使用的钩子。它在 之后直接调用Init injections & reactivity。这就是初始化props, data& 的computed地方。紧接着,created生命周期方法被调用。

作为一个实际示例,他的回答中链接的代码笔Joseph Silber显示了在方法中成功使用了计算属性。created

事实上,唯一不能使用的生命周期方法injections & reactivitybeforeCreated. 所有其他生命周期方法,例如mounted,updated甚至beforeDestroy&destroyed都可以访问它。