从store中获取数据 vue
时间: 2024-03-02 20:41:18 浏览: 130
要从Vue的store中获取数据,你可以使用Vuex提供的getter方法。在你提供的代码中,可以看到在store.js文件中定义了state和getter。
首先,在组件中引入Vuex并使用Vue.use(Vuex)来启用Vuex插件。然后,你需要使用mapGetters方法将getter映射到组件中。在你的store.js文件中,getter被命名为getId,所以你可以通过在组件中调用this.getId来获取数据。记得在组件中使用计算属性来实现映射。
下面是一个例子,展示了如何从store中获取数据:
```javascript
// 引入Vue和Vuex
import Vue from 'vue';
import Vuex from 'vuex';
// 启用Vuex插件
Vue.use(Vuex);
// 创建store实例
const store = new Vuex.Store({
state: {
num: 0
},
mutations: {
add(state, n) {
state.num = n;
},
del(state, n) {
state.num -= n;
}
},
getters: {
getId: state => state.num
}
});
// 将store实例导出
export default store;
```
在组件中,你可以这样使用getter来获取数据:
```javascript
// 引入Vue和Vuex
import Vue from 'vue';
import Vuex from 'vuex';
// 启用Vuex插件
Vue.use(Vuex);
// 引入store
import store from './store';
// 创建组件
export default {
computed: {
...mapGetters(['getId'])
},
mounted() {
console.log(this.getId); // 输出store中的数据
}
}
```
在这个例子中,通过使用mapGetters方法将getter映射到组件中,你可以直接使用this.getId来获取store中的数据。
请注意,这只是一个示例,你需要根据你的实际情况来进行相应的调整和修改。
阅读全文