- vuex:
- vuex是什么:
- vue中实现数据管理的插件,对多个组件的共用状态进行管理,也能实现组件之间的数据传递
- vuex优点:
- 集中共享数据管理,便于数据共享
- 响应式
- vuex用法
- store:
- 创建store对象:const store = new Vuex.Store({ state:{count:0} })
- 访问store数据:this.$store.state
- mapstate:能帮助生成计算属性coumputed:{ ...mapState(['count']) }
- mutations:只能通过mutations内定义变更store数据的函数,并不能直接操作store里面的数据,不能实现异步操作:
- 定义mutations
- 触发mutations: this.$store.commit('add')
- 使用mapMutations:将需要的mutations函数映射为当前的methods方法
- 如图
- action:
- 在actions内定义:
- 触发actions:this.$store.dispatch('addAsync')
- mapActions:将需要使用的actions函数,映射为当前组件的methods方法
- getters:
- 定义getters:
- 使用getters:this.$store.getters.名称
- store:
- vuex与eventbus区别:
- vuex:响应式变化,与双向绑定原理一样,通过setter与getter进行数据劫持
- eventbus:利用时间抛发原理进行数据传递
- vuex是什么:
- pinia:
- 只有store、actions、gettters,其中actions支持同步与异步
- store内定义数据,使用storeToRefs(store)实现数据响应式
- store.$reset():重置store内数据
- store.$patch:能批量修改store内部数据
- store.$state = obj :替换整个state对象
- getters:store内的computed属性
vuex/pinia/eventBus学习记录
最新推荐文章于 2024-06-12 11:13:48 发布