位置: IT常识 - 正文

【vue】vuex中modules的基本用法(vuex model)

编辑:rootadmin
【vue】vuex中modules的基本用法

推荐整理分享【vue】vuex中modules的基本用法(vuex model),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue modal,vuex moudle,vue module,vuex model,vuex moudle,vuex中的module,vuex moudles,vuex moudles,内容如对您有帮助,希望把文章链接给更多的朋友!

1,什么时候用modules

由于使用单一状态树,应用的所有状态会集中到一个比较大的对象。当应用变得非常复杂时,store 对象就有可能变得相当臃肿。 为了解决以上问题,Vuex 允许我们将 store 分割成模块(module)。每个模块拥有自己的 state、mutation、action、getter、甚至是嵌套子模块——从上至下进行同样方式的分割 在模块中使用:namespaced: true, 命名空间,添加之后,当前模块下的标识符可以和其它模块相同,用于解决不同模块的命名冲突问题

2,store文件结构

3.1 index.js中手动引入modules

import Vue from 'vue'import Vuex from 'vuex'import bus from './modules/bus'import app from './modules/app'const path = require('path')Vue.use(Vuex)let store = new Vuex.Store({ state: { }, mutations: { }, actions: { }, modules: { namespaced: true, app, bus }});export default store

3.2 index.js 中动态引入modules

import Vue from 'vue'import Vuex from 'vuex'const path = require('path')Vue.use(Vuex)const files = require.context('./modules', false, /\.js$/)let modules = {}files.keys().forEach(key => { let name = path.basename(key, '.js') modules[name] = files(key).default || files(key)})let store = new Vuex.Store({ state: { }, mutations: { }, actions: { }, modules});export default store

4,app.js 文件中代码

let user = { namespaced: true, state: {}, mutations: { setUser(state, val) { state.user = val; } }, getters: {}, actions: { setName(state, val) { return new Promise(resolve => { setTimeout(function () { state.user = val; resolve(state.user); }, 2000) }) } }}export default user;

 5,配置main.js,挂载store

new Vue({ el: '#app', router, store, components: { App: App }, template: '<App/>'})【vue】vuex中modules的基本用法(vuex model)

6,vue中使用

// commit 执行mutations里的方法,同步操作 this.$store.commit('app/setUser', {name: '张三'}); console.log(this.user.name); // dispatch 执行actions里的方法,异步操作 this.$store.dispatch('app/setName', {name: '李四'}).then(res => { console.log(res.name); })

7,js中使用

// 引入 这里的store 就相当于页面中的 this.$storeimport store from '@/store'export const setCurUser = (user) => { let curUser = store.app.user if(!curUser) { store.commit("app/setUser", user) return user } return curUser}

注意:

1,vue和vuex的版本搭配

vue2使用vuex3;vue3使用vuex4. 否则会出现this.$store为undefined错误

延伸:

1,vuex的五种状态 state、getter、mutation、action、module

state:所有共享数据统一放到state中,与data类似

mutation: 类似于事件,用于改变状态

action: 和mutation相似,但是action是异步操作

getter: 类似vue中的computed,进行缓存,形成新的数据

modules: 分模块,大型项目一个对象管理会很臃肿

本文链接地址:https://www.jiuchutong.com/zhishi/292954.html 转载请保留说明!

上一篇:五-2、vue中引用文件路径问题(vue引用类型)

下一篇:【uniapp】 的事件处理详解(uniapp实战)

  • 广告公司的税务
  • 综合收入扣税
  • 汇算清缴时发现去年的成本少确认了报表怎么填列
  • 报关单保费000/0.1/1
  • 外经证预交税怎么算
  • 申报更正日期改变会导致逾期申报吗
  • 企业所得税跨年度事项
  • 金融资产减值准备可以转回吗
  • 无偿赠送他人货物交增值税吗
  • 卖二手车发票如何做账?
  • 发工资四舍五入可以吗
  • 外购商品用于促销能抵扣吗
  • 公司增值税进项税不够还有什么办法处理
  • 本月完工产品的会计分录
  • 建筑业如何核算费用
  • 金三系统客户端插件在哪下载以及安装流程是怎样的?
  • 购买材料未付款怎么做账
  • 进口商品合同
  • 员工吃饭发票的怎么报销
  • 个体工商户网上报税流程
  • 福利费的支付范围
  • 禁止局域网用户访问权限
  • 华硕主板进入bios设置
  • 公司购车要交哪些税
  • uniapp怎么运行到手机模拟器
  • php7.3安装
  • 代理业务资产的含义
  • 增值税报表填报说明
  • php7匿名函数
  • 注意!PHP 7中不要做的10件事
  • 代扣车船税的会计处理
  • phpcms怎么样
  • 本期应补退税额和期末未缴税额
  • 一般人转小规模政策到什么时候
  • 事业单位回复短信里的加号要吗
  • 试生产期间发生事故后重新
  • 美团平台技术部是干什么的
  • 科目余额表数据包括
  • 贴现金额的会计分录
  • 跨季度的发票可以冲红吗
  • 财务费用利息收入是什么意思
  • 汇兑应该计入什么科目
  • 普通发票能做进项吗
  • 公司向个人借款合法吗
  • 交易性金融资产属于流动资产
  • 解决企业应收账款问题
  • 诉讼期间的利息法院支不支持
  • 把上级机关来文转给下级机关的通知
  • 未确认融资费用是什么类科目
  • 密码区是什么
  • sql server 数据库介绍
  • sql server怎么改数据
  • mysql 1449解决
  • docker安装使用
  • 比较常见的成语有哪些
  • WINDOWS操作系统内置的GUEST
  • 苹果电脑安装macos怎么安装
  • win8只能应用商店下软件吗
  • ubuntu命令行添加用户
  • incorrect email format, please re-enter.
  • 怎么安装多个相同软件
  • macos 复制快捷键
  • hp电脑系统win8系统
  • win10的快速访问
  • 如何在win7上打开win10软件
  • opengl教程48讲
  • vue router routes
  • 常用的jquery鼠标事件
  • 配置ip地址的方法有哪几种
  • nodejsorg
  • python 两个列表一一对应
  • jquery判断数据类型
  • android:imeOptions属性
  • 中国有多少人2022
  • 2023车船税收费价格表图片
  • 个体办税控盘需要什么材料
  • 汽车购车发票开完票能更改名字吗?
  • 地税局上班时间是几点
  • 小规模纳税人开专票需要交税吗
  • 苏州虎丘区税务局在哪里
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设