首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么状态属性不显示VUEX项目中计算出来的值?

为什么状态属性不显示VUEX项目中计算出来的值?
EN

Stack Overflow用户
提问于 2020-05-21 05:01:35
回答 2查看 227关注 0票数 0

同时使用VUEX构建VUE项目。我不是从在todos.js VUEX模块中定义的状态获取属性,而是从VUEX存储中定义的正常属性。我使用了模块并分离了文件。

代码语言:javascript
复制
<div> isLoading: {{ isLoading }} </div>     // isLoading: 
<div> isValid: {{ isValid }} </div>         // isValid: true

计算

代码语言:javascript
复制
computed: {
isLoading() {
  const loading = this.$store.state.isLoading;
  console.log(loading);
  return loading;
},

isValid() {
  const valid = this.$store.state.isValid;
  console.log(valid);
  return valid;
},

},

VUEX商店

代码语言:javascript
复制
import Vue from 'vue';
import Vuex from 'vuex';
import todos from './modules/todos';

Vue.use(Vuex);

export default new Vuex.Store({
  state: {
    isValid: true,
  },
  getters: {
  },
  mutations: {
  },
  actions: {
  },
  modules: {
    todos,
  },
});

todos.js

代码语言:javascript
复制
const state = {
  isLoading: true,
};

export default {
  state,
};

输出

代码语言:javascript
复制
isLoading:
isValid: true

isLoading不显示为真,但isValid显示为真。我不明白他们的行为,我看过医生的书,什么也找不到。

EN

回答 2

Stack Overflow用户

发布于 2020-05-21 05:16:43

尝试添加模块名

代码语言:javascript
复制
computed: {
  isLoading() {
    const loading = this.$store.state.todos.isLoading;
    console.log(loading);
    return loading;
  }
},
票数 0
EN

Stack Overflow用户

发布于 2020-05-21 06:03:27

您可以使用vuex助手函数,例如mapState

代码语言:javascript
复制
import { mapState } from "vuex";
...

computed: {
   ...mapState("/todos", ["isLoading"])
}

代码语言:javascript
复制
computed: {
  ...mapState({
    isLoading: state => state.todos.isLoading
  })
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61927601

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档