vuex mapGetters
时间: 2023-10-13 18:13:05 浏览: 112
`mapGetters` 是 Vuex 提供的一个辅助函数,用于将 store 中的 getter 映射到组件的计算属性中。它可以帮助我们简化组件中对 getter 的调用。
使用 `mapGetters` 首先需要在组件中引入 `Vuex`:
```javascript
import { mapGetters } from 'vuex'
```
然后在组件的计算属性中使用 `mapGetters`:
```javascript
computed: {
...mapGetters([
'getterName1',
'getterName2'
])
}
```
这样就可以在组件中直接使用 `this.getterName1` 和 `this.getterName2` 访问 store 中定义的 getter 了。如果需要给计算属性取别名,可以使用对象的形式:
```javascript
computed: {
...mapGetters({
aliasName1: 'getterName1',
aliasName2: 'getterName2'
})
}
```
这样就可以使用 `this.aliasName1` 和 `this.aliasName2` 访问相应的 getter。
相关问题
vuex mapgetters
`mapGetters` 是 Vuex 提供的一个辅助函数,用于将 store 中的 getter 映射到组件的计算属性中。它可以帮助我们简化组件中对 getter 的调用。
使用 `mapGetters` 首先需要在组件中引入 `Vuex`:
```javascript
import { mapGetters } from 'vuex'
```
然后在组件的计算属性中使用 `mapGetters`:
```javascript
computed: {
...mapGetters([
'getterName1',
'getterName2'
])
}
```
这样就可以在组件中直接使用 `this.getterName1` 和 `this.getterName2` 访问 store 中定义的 getter 了。如果需要给计算属性取别名,可以使用对象的形式:
```javascript
computed: {
...mapGetters({
aliasName1: 'getterName1',
aliasName2: 'getterName2'
})
}
```
这样就可以使用 `this.aliasName1` 和 `this.aliasName2` 访问相应的 getter。
vue3 vuex mapGetters
在Vue3中,使用Vuex的mapGetters方法需要进行一些改变。相比于Vue2中使用的mapGetters,Vue3中使用的是createNamespacedHelpers方法来实现类似的功能。你可以将getter函数绑定到组件的计算属性中,使其能够在组件中直接访问和使用。下面是一个示例:
```javascript
import { createNamespacedHelpers } from 'vuex'
const { mapGetters } = createNamespacedHelpers('moduleName')
export default {
computed: {
...mapGetters(['getterName'])
}
}
```
上面的代码中,'moduleName'是你的模块名称,'getterName'是你想要绑定的getter函数的名称。通过使用createNamespacedHelpers方法,你可以在组件中直接使用mapGetters来获取指定模块下的getter函数。
阅读全文