位置: IT常识 - 正文

Vuex 之一:3种拿到 state 中数据的方式与实例剖析(vuex详解和用法)

编辑:rootadmin
Vuex 之一:3种拿到 state 中数据的方式与实例剖析 Ⅰ、Vuex 简介:

推荐整理分享Vuex 之一:3种拿到 state 中数据的方式与实例剖析(vuex详解和用法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vuex 实现,vuex怎么用,vuex使用教程,vuex使用教程,vuex简单使用,vuex使用流程,vuex详解和用法,vuex使用的大致步骤,内容如对您有帮助,希望把文章链接给更多的朋友!

1、Vuex 是什么?

答:Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式; 而所谓状态就是指:组件中所维护的数据); (简而言之:就是状态管理,解决复杂组件数据通信,状态共享;)

2、Vuex 的图例讲解: 其一、对 Vue Components 的理解: Vue Components 是指:一个组件(如:compA.vue);

其二、对 State 的理解: State 是指:存放数据的(数据最终是展示(render)在组件的模板(视图)中);

其三、对 Mutations 的理解: Mutations 是指:用来存放修改方法的(且是同步的); 且 Vue Components 可以通过 commit 来修改 Mutations;

其四、对 Actions 的理解: Actions 是指:用来放异步操作的(如:ajax 请求); 且 Vue Components 可以通过 dispatch 派发 Action 的异步请求; 同时: Action 可以直接获取接口: Backend API, 或通过 Commit 来修改 Mutations 从而修改 State 数据;

3、Vuex 的配置过程:

其一、选择并下载 Vuex 版本的过程中: 注意:Vue2 是与 Vuex3相匹配的,而 Vue3 是与 Vuex4 相匹配的;

其二、打开终端并输入命令: npm i vuex@3

Ⅱ、如何引入并使用 Vuex :

1、用 vue-cli 创建项目;

2、在 src 下建一个 store 文件夹并创建 index.js 文件;

其一、建成的文件夹如下所示:

其二、index.js 里面引入的 vuex 的代码为:

import Vue from 'vue'import Vuex from 'vuex'Vue.use(Vuex) // 注意:一定要用 Vue.use() 注册一下;const store = new Vuex.Store({ /* 此时的 Vuex.Store 就是一个构造函数(即:相当于一个实例); */ // 定义状态的地方; state: { num: 1, school: { name: 'xuexiqianduan', age: 26 } },})export default store// 此时是导出 store 文件,便于挂载;

3、要在 main.js 文件中挂载一下:

import Vue from 'vue'import App from './App.vue'import store from './store'Vue.config.productionTip = falsenew Vue({ store, /* 挂载到实例完成后,在 vue 项目的任何地方就都可以使用 store */ render: h => h(App),}).$mount('#app')Vuex 之一:3种拿到 state 中数据的方式与实例剖析(vuex详解和用法)

4、然后在 App.vue 中使用;

Ⅲ、实例剖析在 App.vue 中使用 state 的过程:

1、方式一:通过 $store.state.num 拿到数据;

其一、 此时的 App.vue 的代码为:

<template> <div id="app"> <h1>真实用法:展示Vuex中的State</h1> <p>方式一: num: {{ $store.state.num }}</p> <!-- '$store'就是指:拿到已经挂载到实例上的 store 下的 index.js 的内容; --> </div></template><script>export default { computed: { }}</script><style>#app { font-family: Avenir, Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-align: center; color: #2c3e50; margin-top: 60px;}</style>

其二、页面的展示效果为:

其三、而此时 index.js 中的 num 的值为: (即:已成功拿到了 index.js 中的 num 值;)

2、方式二:通过 {{ num }} 拿到数据;

其一、 此时的 App.vue 的代码为:

<template> <div id="app"> <h1>真实用法:展示Vuex中的State</h1> <p>方式二: num: {{ num }}</p> </div></template><script>export default { computed: { num() { return this.$store.state.num; }, }}</script><style>#app { font-family: Avenir, Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-align: center; color: #2c3e50; margin-top: 60px;}</style>

其二、页面的展示效果为:

其三、而此时 index.js 中的 num 的值为: (即:已成功拿到了 index.js 中的 num 值;)

3、方式三:通过 {{ num }} {{school.name}} 拿到数据;

其一、 此时的 App.vue 的代码为:

<template> <div id="app"> <h1>真实用法:展示Vuex中的State</h1> <p>方式三:num: {{ num }} school: {{ school.name }}</p> </div></template><script>import {mapState} from 'vuex'export default { computed: { ...mapState(['num','school']), // 该函数内部运行的返回值大致为:{num: () => this.$store.state.num, school: () => this.$store.state.school} } }}</script><style>#app { font-family: Avenir, Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-align: center; color: #2c3e50; margin-top: 60px;}</style>

其二、页面的展示效果为:

其三、而此时 index.js 中的 num 的值为: (即:已成功拿到了 index.js 中的 num 值;)

Ⅳ、小结:

其一、哪里有不对或不合适的地方,还请大佬们多多指点和交流! 其二、有兴趣的话,可以多多关注这个专栏(Vue(Vue2+Vue3)面试必备专栏):https://blog.csdn.net/weixin_43405300/category_11525646.html?spm=1001.2014.3001.5482

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

上一篇:imu内参标定(内外参标定)

下一篇:PHP开发制作一个简单的活动日程表Calendar(php开发项目)

  • 递延所得税资产和递延所得税负债
  • 定期定额征收和核定征收一样吗
  • 小规模纳税人租金发票的税率是多少
  • 员工个人承担的保险分录
  • 视同内销补税的财务处理
  • 一张发票开不足一台设备的金额怎么办
  • 一般纳税人销项开普票,进项票可以抵扣吗
  • 固定资产后续支出资本化条件是什么
  • 不动产出租属于什么收入
  • 资本公积是啥
  • 房地产开发桩基施工方案
  • 纳税人发生纳税义务,未按照规定
  • 企业认购普通股100万股作为交易性金融资产管理
  • 海关缴款书认证不符
  • 个人开劳务发票几个点
  • 税收预测表模板
  • 劳务费个人还需要交税吗
  • 预提费用和待摊费用是根据以下哪项原则设置的会计科目
  • 兼职劳务费个税怎么算
  • 库存现金的收支账务处理
  • win10一段时间不动黑屏
  • 企业发生的培训费能否在所得税前扣除
  • 公司增资的方式有什么
  • 以前年度损益调整借贷方向
  • php二维数组遍历
  • 筹建期间业务招待费的处理
  • PHP:mb_convert_kana()的用法_mbstring函数
  • vcpkgsrv.exe是什么进程
  • 小规模纳税人销售货物税率是多少
  • 上市公司股东股份轮候冻结是什么意思
  • 现金长款怎么做会计分录
  • 发票填开有哪些规范性要求
  • php统计目录中文怎么写
  • php连接mysql8.0
  • unix时间戳长度
  • php后端主要会涉及到哪些技术
  • Python 高性能 pdf
  • 季度申报残保金怎么计算
  • input输入框限制最大字数
  • 购买图书可以开增值税专票么?
  • 应收账款收不回来
  • 织梦的首页怎么换图片
  • mysql查询一列数据
  • 织梦模板安装完整教程
  • 长期待摊费用科目性质
  • 收到的存款利息
  • 资产负债表递延所得税资产计算公式
  • 三免三减半递延所得税案例
  • 废品销售是否缴纳增值税
  • 增值税进项税额加计抵减会计处理
  • 解决在sql脚本中怎么写
  • 工程分包需要注意什么
  • 销售原材料的差价怎么算
  • 公司注销清算时个人股东如何计算个人所得税
  • 人力资源社保代缴
  • 税前弥补以前年度亏损
  • 支付临时工人的报酬属于工资薪金概算吗
  • 风险纳税人去税务局去报税可以吗
  • 主营业务收入核算项目组合表
  • 长期待摊费用摊完了之后怎么处理
  • 租赁写字楼的需求有哪些
  • 职工福利费扣除税率
  • 解读分布式光伏开发前期工作要点及措施
  • Windows Sever 2016技术预览版3 本月发布
  • xp系统删除文件怎么删
  • 在windows上装ubuntu
  • linux git教程
  • 设置u盘为只读
  • linux scp命令的用法详解
  • xshell使用ssh命令远程连接linux
  • windows下打开注册表的命令是什么
  • bat for do
  • bat 批处理文件
  • javascript几种类型
  • javascript要怎么学
  • 快速掌握英语的方法
  • 返利是否合法
  • 土地增值税可否免税
  • 山东2022新生儿数量统计表
  • 福建广电网上营业厅下载
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设