vue3 store 全局变量
时间: 2023-10-06 19:14:22 浏览: 92
vue实现从外部修改组件内部的变量的值
在Vue 3中,你可以使用`provide`和`inject`功能来创建全局变量。下面是一个简单的示例:
首先,在你的应用程序的根组件中,你可以使用`provide`将全局变量注入到应用程序中:
```javascript
import { createApp, provide } from 'vue';
import App from './App.vue';
const app = createApp(App);
const store = {
state: {
count: 0
},
increment() {
this.state.count++;
}
};
app.provide('store', store);
app.mount('#app');
```
然后,在任何组件中,你可以使用`inject`来访问全局变量:
```javascript
import { inject } from 'vue';
export default {
setup() {
const store = inject('store');
const incrementCount = () => {
store.increment();
};
return {
incrementCount
};
}
};
```
现在,你可以在任何组件中使用`incrementCount`方法来增加全局变量`count`的值。请注意,`provide`和`inject`是响应式的,这意味着当全局变量发生变化时,所有使用它的组件都会被更新。
阅读全文