• vue状态管理——Vuex


     vuex官方解释

    Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式 + 库。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。

    简单理解 

     vuex就是把组件共享状态抽取出来以一个全局单例模式管理,把共享的数据函数放进vuex中,任何组件都可以进行使用。

    什么时候我们该使用它?

    Vuex 可以帮助我们管理共享状态,并附带了更多的概念和框架。这需要对短期和长期效益进行权衡。

    如果您不打算开发大型单页应用,使用 Vuex 可能是繁琐冗余的。确实是如此——如果您的应用够简单,您最好不要使用 Vuex。一个简单的 store 模式就足够您所需了。但是,如果您需要构建一个中大型单页应用,您很可能会考虑如何更好地在组件外部管理状态,Vuex 将会成为自然而然的选择。

     使用

    1、 安装Vex 

    npm install --save vuex

    2、配置Vuex文件

    新建文件夹 store 新建文件 index.js ,在index.js文件进行配置vuex文件——相当于数据库,只不过是在前端。所有状态(数据都放在state中)比如:counter就相当于数据库的一个字段,0就是字段值。

    1. import { createStore } from "vuex";
    2. // const store = createStore({
    3. // })
    4. // export default store;
    5. //或者简写如下
    6. export default createStore({
    7. state:{
    8. counter:0
    9. }
    10. })

    3、在全局进行引入,在main.js文件添加以下代码,重点是引入和挂载。

    1. import store from './store'
    2. const app = createApp(App);
    3. app.use(store)
    4. app.mount('#app')

    4、在组件中读取状态,在任意一个组件页面中使用,都可以获取到存储在state下的值

    第一种

    1. <p> counter = {
    2. {$store.state.counter}} p>

     第二种 在任意一个组件页面中使用以下代码,只不过是放在了computed下,computed专门读取vuex的数据。

    1. <template>
    2. <p>{
    3. { counter }}p>
    4. template>
    5. <script>
    6. import { mapState } from "vuex"
    7. export default {
    8. computed:{
    9. //专门读取vuex的数据
    10. //如有多个 则: ...mapState(["counter",“age"])
    11. ...mapState(["count
  • 相关阅读:
    【Docker】docker构建java项目
    Python__new__和单例对象
    9. 内核、文件系统加载工具
    【LeetCode刷题(数据结构与算法)】:将二叉搜索树转化为排序的双向链表
    2024年浙大MBA项目必报名的三个理由
    大厂 Framework 面试必备 Handler&Binder 面试题
    JavaScript中的this
    每日leetcode_2441_对应负数同时存在的最大整数
    vite 依赖预构建-依赖扫描
    拖尾渲染器-Unity拖尾渲染器的使用
  • 原文地址:https://blog.csdn.net/qq_45947664/article/details/127660917