vuex的module模块用法示例


Posted in Javascript onNovember 12, 2018

想尝试使用vuex的module来进行操作,看了一些资料,我简单进行了一个简化

目录结构:

store
│ index.js
│ 
├─feeds
│   actions.js
│   getters.js
│   index.js
│   mutation-type.js
│   mutations.js
│   state.js
│   
└─movies
    actions.js
    getters.js
    index.js
    mutation-type.js
    mutations.js
    state.js

这里是两个模块feeds和movies

第一步:在store文件夹下的index.js入口文件写入:

import Vue from 'vue';
import Vuex from 'vuex';
import feeds from './feeds';
import movies from './movies';

Vue.use(Vuex);

export default new Vuex.Store({
 modules: {
  feeds,
  movies
 },
});

第二步:在每个模块内的index文件这组装所有的零件,并且输出:

import state from './state';
import mutations from './mutations';
import actions from './actions';
import getters from './getters';

export default {
    namespaced: true, //多出的一行
    state,
    mutations,
    actions,
    getters
};

注意上面多出的一行,我们在组件里怎么区分不同模块呢?namespaced写成true,意思就是可以用这个module名作为区分了(也就是module所在的文件夹名)

第三步:在组件里使用:

使用的时候

获取state,这里使用映射:

import { mapState, mapMutations } from "vuex";

export default {
computed:{
  ...mapStated('模块名(嵌套层级要写清楚)',{ //比如'movies/hotMovies
    a:state=>state.a,
    b:state=>state.b
  })
},

触发actions操作:

import { mapActions } from 'vuex'
methods:{
  ...mapActions('模块名(嵌套层级要写清楚)',[ //比如'movies/getHotMovies
    'foo',
    'bar'
  ])
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript读取xml
Nov 04 Javascript
JQuery 绑定select标签的onchange事件,弹出选择的值,并实现跳转、传参
Jan 06 Javascript
复选框全选与全不选操作实现思路
Aug 18 Javascript
JS实现程序暂停与继续功能代码解读
Oct 10 Javascript
JS实现文字向下滚动完整实例
Feb 06 Javascript
JS中dom0级事件和dom2级事件的区别介绍
May 05 Javascript
jQuery使用deferreds串行多个ajax请求
Aug 22 Javascript
使用ES6语法重构React代码详解
May 09 Javascript
JavaScript实现简单动态进度条效果
Apr 06 Javascript
mockjs+vue页面直接展示数据的方法
Dec 19 Javascript
js实现单元格拖拽效果
Feb 10 Javascript
JS removeAttribute()方法实现删除元素的某个属性
Jan 11 Javascript
React手稿之 React-Saga的详解
Nov 12 #Javascript
基于游标的分页接口实现代码示例
Nov 12 #Javascript
React Hooks的深入理解与使用
Nov 12 #Javascript
详解如何解决vue开发请求数据跨域的问题(基于浏览器的配置解决)
Nov 12 #Javascript
jQuery 操作 HTML 元素和属性的方法
Nov 12 #jQuery
微信小程序左滑删除功能开发案例详解
Nov 12 #Javascript
微信运维交互机器人的示例代码
Nov 12 #Javascript
You might like
WINDOWS下php5.2.4+mysql6.0+apache2.2.4+ZendOptimizer-3.3.0配置
2008/03/28 PHP
php几个预定义变量$_SERVER用法小结
2014/11/07 PHP
PHP变量赋值、代入给JavaScript中的变量
2015/06/29 PHP
php中替换字符串函数strtr()和str_repalce()的用法与区别
2016/11/25 PHP
Thinkphp集成抖音SDK的实现方法
2020/04/28 PHP
JS 自定义函数缺省值的设置方法
2010/05/05 Javascript
初窥JQuery(二)事件机制(2)
2010/12/06 Javascript
JavaScript(JS) 压缩 / 混淆 / 格式化 批处理工具
2010/12/10 Javascript
100个不能错过的实用JS自定义函数
2014/03/05 Javascript
JS实现图片放大镜效果的方法
2015/02/27 Javascript
简介JavaScript中的getUTCFullYear()方法的使用
2015/06/10 Javascript
JavaScript中的对象与JSON
2015/07/03 Javascript
iframe跨域通信封装详解
2015/08/11 Javascript
AngularJS内建服务$location及其功能详解
2016/07/01 Javascript
Angular中ng-options下拉数据默认值的设定方法
2017/06/21 Javascript
基于Bootstrap模态对话框只加载一次 remote 数据的解决方法
2017/07/09 Javascript
vant(ZanUi)结合async-validator实现表单验证的方法
2018/12/06 Javascript
Vue源码解析之Template转化为AST的实现方法
2018/12/14 Javascript
[07:25]DOTA2-DPC中国联赛2月5日Recap集锦
2021/03/11 DOTA
Python中使用Boolean操作符做真值测试实例
2015/01/30 Python
恢复百度云盘本地误删的文件脚本(简单方法)
2017/10/21 Python
详解如何使用Python编写vim插件
2017/11/28 Python
numpy添加新的维度:newaxis的方法
2018/08/02 Python
python 产生token及token验证的方法
2018/12/26 Python
PyQt5 对图片进行缩放的实例
2019/06/18 Python
详解python中index()、find()方法
2019/08/29 Python
CHARLES & KEITH英国官网:新加坡时尚品牌
2018/07/04 全球购物
东芝官网商城:还原日式美学,打造美好生活
2018/12/27 全球购物
平面设计自荐信
2013/10/07 职场文书
学习两会精神心得范文
2014/03/17 职场文书
材料化学专业求职信
2014/07/15 职场文书
警告通知
2015/04/25 职场文书
2015年秋季运动会前导词
2015/07/20 职场文书
心得体会格式及范文
2016/01/25 职场文书
2019年最新七夕唯美祝福语(60条)
2019/07/22 职场文书
MySQL系列之十二 备份与恢复
2021/07/02 MySQL