cari

Rumah  >  Soal Jawab  >  teks badan

Tidak boleh menetapkan sifat undefined (menetapkan 'isRightSidebarExpanded')

Saya cuba menukar templat untuk digunakan dengan nuxt.js

Harta ini memberi saya ralat ini

Tidak boleh menetapkan sifat undefined (menetapkan 'isRightSidebarExpanded')

@click="$store.global.isRightSidebarExpanded = false"

Ini ialah fail JS: https://lineone.piniastudio.com/js/app.js

Saya mengimportnya ke dalam nuxt.js menggunakan baris ini dalam nuxt.config.js

script: [
     {src: '/js/app.js', body: false, defer:true}
     ]

Kemudian nuxt.js menunjukkan kepada saya ralat ini kerana ia seolah-olah mengabaikan fail javascript pelanggan, walaupun ia berfungsi dengan sempurna tanpa nuxt.js tetapi secara setempat hanya memasukkan fail HTML/JS statik

Anda boleh lihat tapak web berfungsi dengan betul (Laravel) di sini https://lineone.piniastudio.com/

Sesetengah pembolehubah HTML (seperti "activeTab") juga tidak ditentukan

Sifat atau kaedah 'activeTab' tidak ditakrifkan pada kejadian tetapi dirujuk semasa pemaparan. Pastikan harta itu reaktif dalam pilihan data atau untuk komponen berasaskan kelas dengan memulakannya. Lihat: https://v2.vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Propertie

Tetapi apabila saya hanya menyimpan HTML/JS/CSS dan menjadikannya berfungsi dalam mod statik tanpa nuxt.js, semuanya berfungsi dengan baik

P粉060528326P粉060528326321 hari yang lalu533

membalas semua(1)saya akan balas

  • P粉204079743

    P粉2040797432024-01-05 09:02:18

    Tidak digalakkan menukar data kedai secara terus.
    Vuex menggunakan Mutasi untuk melakukan perubahan kepada keadaan tersimpan.

    1. Tambah Mutasi untuk menukar harta isRightSidebarExpanded
    mutations: {
        isRightSidebarExpanded(state , payload) {
          // mutate state
          state.isRightSidebarExpanded = payload ;
        }
      }
    1. Kini anda boleh memanggil Mutasi anda
    @click="$store.global.commit('isRightSidebarExpanded',false)"

    ---------------------------------------------------------------- ------------------------ ---------------------------------
    Untuk soalan yang tidak jelas:
    - Semak sama ada $store.global property wujud
    - Semak sama ada anda menggunakan kedai (main.js)

    app.use(store);

    balas
    0
  • Batalbalas