直接上教程
.新创建一个data.js它可以和main.js平级也可以在store文件夹下面都行,无非就是引用的时候前缀多一个单词少一个单词这样
data.js:
从vue上面引入reactive ,然后它可以创建一个也可以创建两个可以任意名称 A或B或C都可以
//data.js
import { reactive } from 'vue';export const globalData = reactive({count: 111,index:'嘿'
});export const zzz = reactive({count: 222,index:'啧'});
app.vue
从'./store/data';上面引入创建的两个globalData,zzz
<template><router-view/>
</template><script setup>
import { provide } from 'vue';
import { globalData,zzz } from './store/data';provide('globalData', globalData);
provide('zzz', zzz);
</script>
home.vue
可以通过名称调用下面自己创建的变量
比如{{ zzz.index }}
<template><div>
<h1>1:{{ globalData.count }}1:{{ globalData.index }}
</h1>
<h1>2:{{ zzz.index }}
</h1></div>
</template>
<script setup>
import { ref,inject } from 'vue';
const globalData = inject('globalData')
const zzz = inject('zzz')
</script>
如果想加或者减(调用)
一个简单的例子
<template><div><div @click="jia">加</div><div @click="jian">减</div>
<h2>动态改变:{{ globalData.count }}
</h2></div>
</template><script setup>
import { ref,inject } from 'vue';const globalData = inject('globalData')
const zzz = inject('zzz')// 定义增加 globalData.count 的方法
const jia = () => {globalData.count += 1;
};// 定义减少 globalData.count 的方法
const jian = () => {globalData.count -= 1;
};</script>
感谢观看