Mengakses tika Vue dalam Vuex: panduan langkah demi langkah
P粉878510551
P粉878510551 2023-10-22 16:38:22
0
2
505

Saya mengisytiharkan pembolehubah global dalammain.jsprojek Vue.js saya.

Vue.prototype.$API = "myapihere"

Saya mahu menggunakannya di mana-mana. Ia berfungsi dengan baik menggunakanthis.$API.

Tetapi dalam Vuex ia tidak berkesan.

console.log(this.$API);

Di sinithis.$APIadalahtidak ditentukan.

Bagaimana saya menggunakan$APIsaya dalam Vuex.

P粉878510551
P粉878510551

membalas semua (2)
P粉194919082

Saya menggunakan Vue 3 danVue.prototype.$foo似乎已在此版本中删除。我还发现在我的 VueX 版本中没有this._vm.

Saya meneroka kaedahProvide / Inject, yang disediakan oleh dokumentasi Vue 3. Ini berfungsi hebat untuk mengakses pembolehubah global dari dalam komponen saya, tetapi saya tidak boleh mengaksesnya dari dalam kedai.

Penyelesaian yang saya cari ialah menggunakan objek dan sifat standard padaglobalPropertiesstoreVue dan tetapkannya sebelum memasang apl.

main.js

import store from './store/index'; import App from './App.vue'; // Load custom globals import conf from '@/inc/myapp.config'; const app = createApp(App) .use(store); // Register globals in app and store app.config.globalProperties.$conf = conf; store.$conf = conf; app.mount('#app');

Apa yang saya suka tentang ini ialah saya boleh mengakses pembolehubah global dengan cara yang sama dalam storan dan komponen.

Dalam komponen:

export default { data() { return { }; }, created() { console.log( this.$conf.API_URL ); }, }

...anda boleh mengaksesthis.$conf.API_URLdengan cara yang sama melalui operasi, mutasi dan getter.

Setelah saya menemui penyelesaian ini, saya tidak lagi perlu mengakses keseluruhan contoh Vue dari dalam kedai, tetapi jika anda memerlukannya atas sebab tertentu, anda boleh menetapkanstore.$app = appdalam kedudukan yang sama dalamstore.$app = app;在main.js.

    P粉054616867

    Jawapan Vue 2 dan Vuex 3

    Instance vue boleh diakses di kedai dengan mengaksesthis._vm

    const store = new Vuex.Store({ mutations: { test(state) { console.log(this._vm); } } });
      Muat turun terkini
      Lagi>
      kesan web
      Kod sumber laman web
      Bahan laman web
      Templat hujung hadapan
      Tentang kita Penafian Sitemap
      Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!