zoukankan      html  css  js  c++  java
  • 使用vite搭建vue3项目(六) 使用vuex进行状态管理

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

    安装

    npm install vuex@next --save

    直接使用

    this.$store.state.xxx

    首先在src目录下创建store文件夹,在其下创建index.ts

    import {createStore} from "vuex"
    
    const store = createStore({
        state() {
            return {num: 1,}
        }
    })
    
    export default store

     修改main.ts 

    import {createApp} from 'vue'
    import router from './router/index'
    import store from './store/index'   // 引入
    import i18n from './locales/index'
    import App from './App.vue'
    
    createApp(App)
        .use(store)   // 使用
        .use(router)
        .use(i18n)
        .mount('#app')

    修改App.vue

    <template>
    <img alt="Vue logo" src="./assets/logo.png" />
    <div>学校:{{getSchool('北京')}}</div>
    <div>学校:{{getSchool('天津')}}</div>
    <div>num:{{$store.state.num}}</div>
    </template>

    <script lang="ts">
    import { defineComponent,ref} from "vue";
    import { useStore } from 'vuex'


    export default defineComponent({
    name: 'App',
    setup() {
    const store = useStore()
    let count = store.state.num;

    function getSchool(val: string) {
    count++
    store.state.num = count
    return val + '第' + count + '小学'
    }

    return {getSchool}
    }
    })
    </script>

    显示如图

  • 相关阅读:
    Ubuntu 11.04 安装后要做的20件事情
    Net 服务命令行参考之一
    Openerp约束句型
    Ubuntu进入Shell
    postgreSql基础命令及linux下postgreSql命令
    解决中文乱码的问题
    An error occured while handling a json request
    Java Socket编程
    CentOS 7 中 Docker 的安装和卸载
    Spring Boot整合shiro-登录认证和权限管理
  • 原文地址:https://www.cnblogs.com/zsg88/p/15669364.html
Copyright © 2011-2022 走看看