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

相关推荐
努力往上爬de蜗牛7 分钟前
react native 实现选择图片或者拍照上传(多张)
javascript·react native·react.js
谢尔登14 分钟前
【React】React组件的渲染过程分为哪几个阶段?
前端·javascript·react.js
MediaTea28 分钟前
Python 第三方库:Flask(轻量级 Web 框架)
开发语言·前端·后端·python·flask
5***o50034 分钟前
前端构建工具缓存清理,解决依赖问题
前端·缓存
q***72561 小时前
Spring Boot + Vue 全栈开发实战指南
vue.js·spring boot·后端
lcc1871 小时前
Vue Vue与VueComponent的关系
前端·vue.js
无敌最俊朗@1 小时前
Vue 3 概况
前端·javascript·vue.js
游九尘1 小时前
Element UI 2.x 校验数组每个对象中的name不能为空
vue.js
摆烂工程师1 小时前
今天 Cloudflare 全球事故,连 GPT 和你的网站都一起“掉线”了
前端·后端·程序员
拉不动的猪1 小时前
一文搞懂:localhost和局域网 IP 的核心区别与使用场景
前端·javascript·面试