Vuex与Pinia相关的面试题

2,085 阅读1分钟

Vuex与Pinia相关的面试题

一、vuex与pinia之间的区别

  1. vuex有5个属性而pinia只有3个,没有modules与mutation。
    • vuex:
      • state: 存放数据源的地方
      • getters: 计算数据(相当于state的计算属性)
      • mutation:同步,唯一能修改state数据源的地方
      • actions:异步
      • modules:模块化
    • pinia:
      • state:数据存放地
      • actions:异步
      • getters: 计算数据(相当于state的计算属性)
  2. pinia体积更小(性能更好)。
  3. pinia可以直接修改state里的数据,而vuex只能通过mutation中去修改。

二、vuex中mutation与actions之间的区别

  1. mutation是唯一能修改state数据源的地方,而actions不可以直接修改。
  2. mutation不是执行异步的代码而actions可以。

三、为什么要使用vuex|pinia状态管理,而不建一个全局变量

  1. 响应式

    • vuex与pinia存储的是响应式,获取与修改,引用都能得到高效的处理。
  2. 命名冲突

  3. 方便管理

四、vuex 与 localStorage 的区别

  1. 存储位置不一样

    • vuex存储在内存中,刷新的话就会清除。localStorage存储在本地内存当中,除非手动清除,否则一直存在。
  2. 存储的有效时间不一样

  3. 响应式

    • vuex存储具有响应式,localStorage没有。