在Vue 3中,可以使用globalProperties在應用程序中全局訪問一些變量或函數。如果想在不同的組件中使用同一個變量,全局變量的設置將非常有用。
import { createApp } from 'vue' const app = createApp({}) app.config.globalProperties.$myGlobalVar = 'Global Value' app.mount('#app')
在這個例子中,我們創建了一個名為$myGlobalVar的全局變量,并將“Global Value”設置為其值。現在,可以在應用程序的任何組件中訪問這個變量了。
export default { mounted () { console.log(this.$myGlobalVar) // "Global Value" } }
雖然可能會看起來很方便,但是在任何地方都能夠訪問和修改此全局變量可能會帶來一些問題。
在Vue 3中,可以使用provide和inject來提供和注入變量。這種方法更加安全,因為變量只能在傳遞給子組件時訪問。
import { createApp, inject } from 'vue' const app = createApp({}) app.provide('myVar', 'Global Value') const ChildComponent = { setup() { const myVar = inject('myVar') console.log(myVar) // "Global Value" } }
在這個例子中,我們使用provide來創建名為“myVar”的全局變量,并將“Global Value”設置為其值。在子組件中,我們使用inject來攝取這個值。
總而言之,全局變量在某些情況下很有用,但是使用提供和注入更加安全和靈活。
上一篇python 鳶尾花例子
下一篇C 創建json