美文网首页程序员猫码vue
34、vuex初探(二)

34、vuex初探(二)

作者: ComfyUI | 来源:发表于2018-09-27 07:37 被阅读136次

前言:上一章讲了vuex的安装及引入,这章讲下vuex中操作的几个方法DispatchCommit等,完成整个vuex操作的小循环。
GitHub:https://github.com/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有了一个初步的了解了,最后看看实现的效果:

本章效果展示

相关文章

  • 34、vuex初探(二)

    前言:上一章讲了vuex的安装及引入,这章讲下vuex中操作的几个方法Dispatch、Commit等,完成整个v...

  • 7、vuex初探(二)

    我再贴一下这张图,我们按照这个顺序讲解: 1、Dispatch 首先我们讲在组件中分发 Action,使用的是di...

  • vuex初探(四)

    1、关于辅助函数 (1)首先我们需要明确一点的就是,像mapState这些都是辅助函数,只不过是一种简写方法,让你...

  • 33、vuex初探(一)

    前言:前面已经为了这章做了一点铺垫了,关于vuex也有很多读者私信我关于这方面的问题,其实vuex也很简单,今天我...

  • 36、vuex初探(四)

    前言:上一章我们将仓库拆分成了四个文件,这一章我们讲下mapState、mapActions这两个辅助函数。Git...

  • 37、vuex初探(五)

    前言:国庆归来,我们继续。这章我们讲mapMutations和mapGetters这两个辅助函数,然后我们vuex...

  • Vue初探(一)——vuex

    vuex的核心是store(仓库),可以管理全局状态state,state的存储是响应式的,不能直接改变store...

  • 6、vuex初探(一)

    1、vuex基本概念 Vuex是什么?Vuex 是一个专为Vue.js应用程序开发的状态管理模式。它采用集中式存储...

  • 8、vuex初探(三)

    1、仓库拆分 当我们仓库代码体积比较大以后,我们需将 action、mutation 和 getter 分割到单独...

  • 10、vuex初探(五)

    1、mapMutations (1)还是来看看这张图: (2)通过这张图我们知道了vuex状态管理机制的一个大体步...

网友评论

本文标题:34、vuex初探(二)

本文链接:https://www.haomeiwen.com/subject/tngdoftx.html