如何在Vue.js中的value.sync语句中引用存储变量

时间:2018-07-30 16:17:59

标签: vue.js vuex

好的,所以我有一个Vuex商店来管理页面上的下拉内容。我当前正在处理的页面具有两组三个相同的下拉菜单,它们的行为应该完全相同。一个在模态上,另一个在主页上。所以我要做的是:

this.$store.commit('setModule', 'manageSchedules');
this.$store.commit('setModule', 'manageSchedulesModale');

每个商店都具有以下内容:

// These are arrays with the lists' content
sites
Profiles
Employees 

//These are the actual value of each of my list

CurrentSite
CurrentProfile
CurrentEmployee

我的问题是我希望通过与vuex存储的相应“ currentXXX”同步来实现列表的值。通常,我会选择类似的东西:

:value.sync="currentXXX"

但是,我在任何地方都找不到在value.sync语句中如何精确地引用商店的信息。有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

好的,Ricky是正确的,使用带有getter和setter的计算属性可以很好地工作,他的链接为我提供了我需要的所有信息。本质上,这就是我现在拥有的:

String input = "MH1BM4";
String lastSymbol = input.substring(5);
int lastNumber = Integer.parseInt(lastSymbol);
String formattedNumber = String.format("%1$04d", lastNumber);
System.out.println(formattedNumber);

再次,Vue.js的魔力实际上给我留下了深刻的印象。在使用计算属性之前,我陷入了无数次ajax调用和promise的纠结,这些调用和promise不断来回,产生不一致的结果。现在,商店的价值得到了完美的更新,列表也做出了相应的反应,而我不必担心数量众多的参数。

无论如何,可能有些事情我做得不好。我知道我可能应该定义getter而不是直接访问该属性,但是就目前而言,它可以正常工作并且我的客户满意(我也是)。