Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Parameters nuxt:访问存储在vuex存储中的全局变量_Parameters_Vuejs2_Vuex_Getter_Nuxt.js - Fatal编程技术网

Parameters nuxt:访问存储在vuex存储中的全局变量

Parameters nuxt:访问存储在vuex存储中的全局变量,parameters,vuejs2,vuex,getter,nuxt.js,Parameters,Vuejs2,Vuex,Getter,Nuxt.js,在我的NUXT应用程序中,我必须为我的所有组件共享一个全局数组。 例如,此数组包含一周的标签: export const state = () => ({ days: [ { code: '1', label: 'Lundi' }, { code: '2', label: 'Mardi' }, { code: '3', label: 'Mercredi' }, ... ] }) export const getters = {

在我的NUXT应用程序中,我必须为我的所有组件共享一个全局数组。 例如,此数组包含一周的标签:

export const state = () => ({
  days: [
      { code: '1', label: 'Lundi' },
      { code: '2', label: 'Mardi' },
      { code: '3', label: 'Mercredi' },
      ...
  ]
})

export const getters = {
  getDayLabel (state, dayCode) {
    return state.days[dayCode]
  },
}
在我的组件中,我必须显示一天的标签。为此,我在组件的模板中编写了:

{{$store.getters['getDayLabel'](dayCode)}}
但是,我有一个错误:

app.js:262 TypeError:_vm.$store.getters.getDayLabel不是函数

我读过一些主题,getter函数不应该有参数?有更好的解决办法吗


Eric。

不需要在存储区中为getter指定新参数

例如,一个仅使用索引检索信息的getter:

 export const getters = {
    getDayLabel: state => index => state.days[index]
}
在模板中:
{$store.getters['getDayLabel'](1.label}}-->输出=Mardi

如果确实要使用代码进行搜索,可以使用筛选功能:

  getDayLabel: state => {
    return dayCode => state.days.filter(c => {
      return c.code === dayCode
    })
  }
在模板中:
{$store.getters['getDayLabel'](2)[0].label}}-->输出=Mardi

更多信息请点击此处

我不知道这是否是一个好的实践,因为我以前从未像这样使用过它,我总是直接在组件中对数据进行筛选