vue使用vuex的来同步状态

概述

  1. 引入依赖
  2. 配置公有vuex
  3. 配置vuex的配置
  4. 页面引入使用

引入依赖

npm 复制代码
npm install vuex@next --save

配置公有vuex

vue 复制代码
import './assets/main.css'

import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import store from './axios/store'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'

const app = createApp(App)

app.use(router)
app.use(store)
app.use(ElementPlus)

app.mount('#app')

配置vuex的配置

js 复制代码
import { createStore } from 'vuex'

const store = createStore({
    state: {
        token: '',
        user: {}
    },
    mutations: {
        token(state, token) {
            state.token = token;
        },
        user(state, user) {
            state.user = user;
        }
    },
    getters: {
        getToken(state) {
            return state.user.token;
        },
        getUser(state) {
            return state.user;
        }
    }
})

export default store;

页面应用

vue 复制代码
<template>
    <div>
        {{ 1 + $store.state.token }} <!-- 使用计算属性 token -->
    </div>
    <Text></Text>
</template>

<script setup>
import Text from './views/test.vue';
import { onMounted, computed } from 'vue';
import { useStore } from 'vuex'

// 在组件挂载时提交 token
onMounted(() => {
    store.commit('token', "fdsfdssfdsfdsfd");
    console.log(store.state.token);
});
</script>
<style scoped></style>
<template lang="">
    <div>
        {{2+ temp}}
    </div>
</template>
<script setup>
import { onMounted, computed, ref } from 'vue';
import { useStore } from 'vuex'
const store = useStore();
const temp = ref(0);
// 在组件挂载时提交 token
onMounted(() => {
    store.commit('token', "f尽快六角恐龙都结束了飞机到是覅sfd");
    console.log(store.state.token);
    temp.value = store.state.token;
});
</script>
<style lang="">

</style>

结果:

1f尽快六角恐龙都结束了飞机到是覅sfd

2f尽快六角恐龙都结束了飞机到是覅sfd

相关推荐
你的人类朋友21 分钟前
什么是断言?
前端·后端·安全
FIN66681 小时前
昂瑞微:实现精准突破,攻坚射频“卡脖子”难题
前端·人工智能·安全·前端框架·信息与通信
椎4951 小时前
苍穹外卖前端nginx错误之一解决
运维·前端·nginx
@。1241 小时前
对于灰度发布(金丝雀发布)的了解
开发语言·前端
我有一棵树1 小时前
前端图片加载失败、 img 出现裂图的原因全解析
前端
FIN66681 小时前
昂瑞微冲刺科创板:硬科技与资本市场的双向奔赴
前端·人工智能·科技·前端框架·智能
im_AMBER1 小时前
杂记 14
前端·笔记·学习·web
牧杉-惊蛰2 小时前
disable-devtool 网络安全 禁止打开控制台
前端·css·vue.js
C+ 安口木2 小时前
vue中监听window某个属性被添加或值的变化
前端·javascript·vue.js
山海鲸可视化2 小时前
简单聊聊数据可视化大屏制作的前端设计与后端开发
前端·信息可视化·数字孪生·数据可视化·3d模型·三维渲染