https://vuex.vuejs.org/zh/installation.html
安装
在引入vue之后直接引入vuex可以直接安装
<script src="/path/to/vue.js"></script>
<script src="/path/to/vuex.js"></script>
如果不使用全局的script标签引用的话
也可以使用npm
npm install vuex --save
在模块化的打包系统里,需要显式的通过Vue.use()安装vuex
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
Vuex 依赖 Promise (opens new window)。如果你支持的浏览器并没有实现 Promise (比如 IE),那么你可以使用一个 polyfill 的库,例如 es6-promise (opens new window)。
你可以通过 CDN 将其引入:
<script src="https://cdn.jsdelivr.net/npm/es6-promise@4/dist/es6-promise.auto.js"></script>
然后 window.Promise 会自动可用。
开始使用
每一个vuex应用的核心是store,包含着应用里大部分状态,vuex的状态存储是响应式的,vue组件从store里读取状态的时候,状态一旦变化,组件也相应更新
不能直接改变store里的状态,唯一途径就是显式地提交(commit)mutation(改变)
开始创建一个store
(只需要提供一个初始state对象和一些mutation)
比如创建了一个state里一个count参数
在mutations里定义一个自增函数,里面传入state,对state里的count进行操作
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
const store = new Vuex.Store({
state: {
count: 0
},
mutations: {
increment (state) {
state.count++
}
}
})
之后在外面使用commit调用mutations里的increment方法
store.commit('increment')
获取store里的state里的参数