这是我在商店中使用的任务模块。在这种情况下,我的showTaskInForm()函数可以正常工作。我可以通过vue开发工具看到任务出现在state.task中
int i = 0;
for(i++; i++; i++){
if(i>10) break;
}
printf("%d",i);
这是我的AddTask.vue组件
int i;
for(i++; i++; i++){
if(i>10) break;
}
printf("%d",i);
正如我前面提到的,我可以看到vuex中的state.task被填充,但是在我的AddTask.vue组件中,我需要确定vuex中是否有task,以便我的表单字段获取state.task的值。
请帮助我,我是Vue.js的新手。
答案 0 :(得分:0)
实例化组件时,由AddTask组件中的数据函数返回的对象仅被评估一次。这意味着您的taskName和description表达式将在对象的生命周期内不求值。
您需要将taskName和description建模为计算属性,以便在依赖项更改后对第三级运算符进行评估(在您的情况下,task的值来自商店)。
import { mapActions, mapGetters } from "vuex";
export default {
name: "AddTask",
computed: {
...mapGetters(['task']),
taskName() {
return this.task ? this.task.name : null
},
description() {
return this.task ? this.task.description : null
}
};