Vuex的API文档说明详解
(编辑:jimmy 日期: 2024/11/26 浏览:3 次 )
概述
import Vuex from 'vuex'
const store = new Vuex.Store({ ...options })
构造器选项
state
类型: Object
Vuex store 实例的根 state 对象
mutations
类型: { [type: string]: Function }
在 store 上注册 mutation,处理函数总是接受 state 作为第一个参数(如果定义在模块中,则为模块的局部状态),payload 作为第二个参数(可选)
actions
类型: { [type: string]: Function }
在 store 上注册 action。处理函数接受一个 context 对象,包含以下属性:
{ state, // 等同于 store.state, 若在模块中则为局部状态 rootState, // 等同于 store.state, 只存在于模块中 commit, // 等同于 store.commit dispatch, // 等同于 store.dispatch getters // 等同于 store.getters }
getters
类型: { [key: string]: Function }
在 store 上注册 getter,getter 方法接受以下参数:
"htmlcode">
{ key: { state, namespaced"htmlcode">commit(type: string, payload"htmlcode">dispatch(type: string, payload"htmlcode">replaceState(state: Object)替换 store 的根状态,仅用状态合并或时光旅行调试
watch(getter: Function, cb: Function, options"htmlcode">subscribe(handler: Function)注册监听 store 的 mutation。handler 会在每个 mutation 完成后调用,接收 mutation 和经过 mutation 后的状态作为参数
store.subscribe((mutation, state) => { console.log(mutation.type) console.log(mutation.payload) })通常用于插件
registerModule(path: string | Array<string>, module: Module)注册一个动态模块
unregisterModule(path: string | Array<string>)卸载一个动态模块
hotUpdate(newOptions: Object)热替换新的 action 和 mutation
辅助函数
mapState(namespace"htmlcode">mapGetters(namespace"htmlcode">上一篇:vue路由传参的基本实现方式小结【三种方式】mapActions(namespace"htmlcode">mapMutations(namespace"htmlcode">createNamespacedHelpers(namespace: string): Object更多关于VUEX方面的相关知识请点击下面的相关链接
下一篇:如何实现iframe父子传参通信
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?