如何在 ...mapState (Vuex) 之间设置一个值

Posted

技术标签:

【中文标题】如何在 ...mapState (Vuex) 之间设置一个值【英文标题】:How set a value between ...mapState (Vuex) 【发布时间】:2020-06-09 21:27:38 【问题描述】:

在Vuex和View中,如何在...mapActions(["getConfig"])之间设置值或执行函数?

例如:

methods: 
    this.theValue=true
    ...mapActions(["getConfig"])
    this.theValue=false

【问题讨论】:

你不能在对象字面量声明中执行任意代码。 【参考方案1】:

将回复写成评论太短了。

包装动作

您需要调用一个操作,但还需要设置一些特定于您的组件的值。您需要包装您的操作调用,例如


  // ...
  methods:
    ...mapActions(["getConfig"]),

    doGetConfig: async function()
      this.theValue = true;
      await this.getConfig();
      this.theValue = false;
    
  

您必须假设所有操作都是异步的,因此async / await

getConfig

与您的问题无关,但 getConfig 听起来是一个吸气剂名称。我写了上面的答案,假设它类似于loadConfig

【讨论】:

@RipperNoChart,如果此答案对您有用,请接受它以将问题标记为已完成。否则,请告诉我们缺少什么

以上是关于如何在 ...mapState (Vuex) 之间设置一个值的主要内容,如果未能解决你的问题,请参考以下文章

具有多个模块的 vuex 命名空间 mapState

Vuex入门—— state,mapState,...mapState对象展开符详解

[转] Vuex入门—— state,mapState,...mapState对象展开符详解

vuex里mapState,mapGetters使用详解

Vuex mapState设置状态

Vuex mapState的基本使用