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 相关文章推荐
在线编辑器的实现原理(兼容IE和FireFox)
Mar 09 Javascript
js检测客户端不是firefox则提示下载
Apr 07 Javascript
基于Jquery插件开发之图片放大镜效果(仿淘宝)
Nov 19 Javascript
js动态创建上传表单通过iframe模拟Ajax实现无刷新
Feb 20 Javascript
javascript 控制input只允许输入的各种指定内容
Jun 19 Javascript
jQuery实现的瀑布流加载效果示例
Sep 13 Javascript
javascript特殊文本输入框网页特效
Sep 13 Javascript
深入理解jquery中的each用法
Dec 14 Javascript
elementui的默认样式修改方法
Feb 23 Javascript
微信小程序全局变量功能与用法详解
Jan 22 Javascript
微信小程序中插入激励视频广告并获取收益(实例代码)
Dec 06 Javascript
vscode自定义vue模板的实现
Jan 27 Vue.js
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
分享一个超好用的php header下载函数
2014/01/31 PHP
PHP批量删除、清除UTF-8文件BOM头的代码实例
2014/04/14 PHP
php清除和销毁session的方法分析
2015/03/19 PHP
php cookie 详解使用实例
2016/11/03 PHP
PHP封装的非对称加密RSA算法示例
2018/05/28 PHP
jQuery 1.8 Release版本发布了
2012/08/14 Javascript
window.open不被拦截的实现代码
2012/08/22 Javascript
js获取指定日期前后的日期代码
2013/08/20 Javascript
bootstrap实现弹窗和拖动效果
2016/01/03 Javascript
深入理解jQuery()方法的构建原理
2016/12/05 Javascript
JS浏览器BOM常见操作实例详解
2020/04/27 Javascript
如何使用RoughViz可视化Vue.js中的草绘图表
2021/01/30 Vue.js
[45:40]Ti4 冒泡赛第二天NEWBEE vs NaVi 1
2014/07/15 DOTA
Python selenium文件上传方法汇总
2020/11/19 Python
PyQt5每天必学之关闭窗口
2018/04/19 Python
python issubclass 和 isinstance函数
2019/07/25 Python
Python hashlib常见摘要算法详解
2020/01/13 Python
pandas中的数据去重处理的实现方法
2020/02/10 Python
matplotlib 曲线图 和 折线图 plt.plot()实例
2020/04/17 Python
Python接口测试数据库封装实现原理
2020/05/09 Python
Python过滤掉numpy.array中非nan数据实例
2020/06/08 Python
python中翻译功能translate模块实现方法
2020/12/17 Python
Expedia马来西亚旅游网站:廉价酒店,度假村和航班预订
2016/07/26 全球购物
瑞贝卡·泰勒官方网站:Rebecca Taylor
2016/09/24 全球购物
印尼旅游网站:via
2017/11/12 全球购物
微软新西兰官方网站:Microsoft New Zealand
2018/08/17 全球购物
美国和加拿大计算机和电子产品购物网站:TigerDirect.com
2019/09/13 全球购物
如何清空Session
2015/02/23 面试题
浙大毕业生自荐信
2014/01/26 职场文书
2015年春节标语口号
2014/12/09 职场文书
民间借贷借条范本
2015/05/25 职场文书
陪护人员误工证明
2015/06/24 职场文书
老人节主持词
2015/07/04 职场文书
诚实守信主题班会
2015/08/13 职场文书
Vue3 Composition API的使用简介
2021/03/29 Vue.js
聊一聊Redis与MySQL双写一致性如何保证
2021/06/26 Redis