共计 660 个字符,预计需要花费 2 分钟才能阅读完成。
Vuex 是什么
Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。
什么是“状态管理模式”?
new Vue({
// state
data () {
return {count: 0}
},
// view
template: `
<div>{{count}}</div>
`,
// actions
methods: {increment () {this.count++}
}
})
这个状态自管理应用包含以下几个部分:
- state,驱动应用的数据源;
- view,以声明方式将 state 映射到视图;
- actions,响应在 view 上的用户输入导致的状态变化。
点击歌手列表切换到歌手详情页的时候,需要把歌手的数据,歌手的名称,图片等,通过参数的传递也是可以解决的,利用 vuex 解决这个问题也可。
- state:所有组件的所有状态和数据,放在同一的内存空间来管理
- vue Components:state 中的数据可以 映射到组件上来渲染组件
- Action:当组件中的数据发生变化的时候,Component 可以通过 dispatch 一个 action,action 会做一些异步操作,
mutation:Action commit 到mutation,他是唯一一个可以修改 state 的途径,其他任何方式修改 state 都是非法的
使用场景:解决多个组件之间的状态共享,这些组件可能是一些关联度很低的组件,所以我们想要共享数据就比较困难
比如遇到一些路由跳转场景,如果我们传递的参数很复杂的话,vuex 是很好的选择
正文完