hooks是react的一个新特性,他是为了解决将复杂的跨组件复用的问题
在Vue2中有一个混入mixins,它的优点是将可重复用的变量或逻辑封装在一个组件中,在需要用的时候,将他引入进来,但是他最大的缺点就是当你使用可重用的变量或者逻辑时,你不知道是那个组件里的,hooks就是为了解决变量或者逻辑属于那个组件的问题
hooks一般使用use开头,但是hooks有一个致命的缺点,就是著名的闭包陷阱,而且每次渲染都要重新调用hooks函数,但是在Vue3中提供了setup语法糖,setup仅仅被调用一次,hooks也是组合式api的灵感来源。
自定义hooks类似这样
pinia是官方推出的新一代全局状态管理工具,官方也在极力推崇他。
三个模块,state,getters,actions,极大简化了vuex。
首先导入definestore,state定义变量,getters类似于计算属性,actions定义方法,可以同步也可以是异步,使用的话,定义一个变量store'=dialogstore() 使用store调用变量和方法