1

我目前正在开发一个支持多种语言的 Vue 网站。选定的语言存储在 vuex-store 中,我有这样的计算属性 lang

lang(){
  return this.$store.state.lang
}

现在我在 v-ifs、节目、其他计算属性等中使用这个属性,它工作得很好。我遇到问题的只有一件事,那就是多选(https://vue-multiselect.js.org/)。计算的选项属性看起来像这样

mappedOptions(){
  return this.options.map(
    (o, ind) => {
      return {name: o.title[this.lang], code: ind}
    }
  );
}

现在的问题是,这不起作用。可能选项正在创建的生命周期挂钩中初始化,因此稍后不会更新。你有什么聪明的想法,我可以通过这个 vue-multiselect 使用多种语言吗?除了这个问题,我非常喜欢这个组件,所以我不想切换。

4

1 回答 1

0

在多选上放一个v-if="computedOption",应该可以解决问题

于 2019-07-02T04:22:26.543 回答