34、vuex初探(二)

作者 : 开心源码 本文共917个字,预计阅读时间需要3分钟 发布时间: 2022-05-12 共198人阅读

前言:上一章讲了vuex的安装及引入,这章讲下vuex中操作的几个方法DispatchCommit等,完成整个vuex操作的小循环。
GitHub: Ewall1106/mall(选择分支chapter34)

我再贴一下这张图,我们按照这个顺序讲解:

截图来自vuex官网

1、Dispatch

首先我们讲在组件中分发 Action,使用的是dispatch这个方法。也就是说假如你想在组件中改变vuex仓库的值,可以使用这个方法。

(1)首先我们再新建一个testCity.vue的文件并与test.vue形成互为父子页面,作为我们这几章vuex初探的案例测试页面。

新建testCity页面

(2)而后我们在testCity页面中用dispatch方法分发action

  • 先简单布局一下(选择列表+提交按钮)
  • 增加一个点击事件,当点击提交的时候将选择的值作为dispatch的参数

dispatch分发action基本布局样式

(3)ok,接下来我们就应该是在store仓库中注册actions

注册`actions`

2、Commit

Action 函数接受一个与 store 实例具备相同方法和属性的 context 对象,因而你可以调用context.commit提交一个 mutation。

(1)接着上面的来,我们在changeCity事件中提交一个mutation

  • 第一个参数是context对象;
  • 第二个参数是接收组件dispatch传过来的city

commit提交mutation

这样,我们就提交了一个mutation。

3、Mutate

更改 Vuex 的 store 中的状态的唯一方法是提交 mutation。

终于,到了这一步我们即可以进行state状态的变更了(这一步就是可以改变state的值)

  • 我们先注册一个mutations
  • 新建commit提交的事件,第一个参数为state,第二个为commit传过来的city值:

修改state中的值

4、小结

最后,当你改变了state的值以后,vue就会自动render重新渲染组件视图,从而完成开篇图1234步骤中的整个小循环。
这样,本章我们就对vuex有了一个初步的理解了,最后看看实现的效果:

本章效果展现

上一篇 目录 已是最后

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 34、vuex初探(二)

发表回复