cari

Rumah  >  Soal Jawab  >  teks badan

Pautan b Bootstrap-vue tidak boleh memaparkan kandungan textContent atau innerHTML

Saya tidak dapat textContent dari blink dan menukarnya. Jika saya mencuba perkara yang sama dengan tag atau tag div maka ia berfungsi dengan baik.

<b-link
 :ref="index"
 v-b-toggle="`${index}`"
 @click="changeText(index)"
>View More</b-link>

changeText(index) {
 console.log(this.$refs[index][0].textContent); // undefined
}

P粉293341969P粉293341969240 hari yang lalu427

membalas semua(2)saya akan balas

  • P粉596191963

    P粉5961919632024-03-28 00:53:53

    Perbezaan antara

    <div /><b-link /> ialah yang pertama ialah penanda HTML asli, manakala yang kedua ialah komponen yang menyediakan tahap abstraksi tertentu. Untuk mengetahui lebih lanjut, saya syorkan membaca tentang Komponen Web asli dan Vue rakan sejawatannya.

    Untuk menukar 的内容<b-link /> anda perlu menggunakan reaktiviti Vue :

    let buttonText = 'View More';
    
    {{ buttonText }}
    
    changeText(index) {
     console.log(viewMore); // undefined
     viewMore = 'View Less';
    }

    balas
    0
  • P粉579008412

    P粉5790084122024-03-28 00:13:26

    Saya mengetahui cara melakukan ini daripada kes ujian vue js Biasanya ini berfungsi

    console.log(this.$refs[index][0].textContent);

    Tetapi memandangkan bootstrap-vue akan mengembalikan komponen vue untuk mengakses elemennya, kita perlu menggunakan $el untuk mengakses sifatnya.

    console.log(this.$refs[index][0].$el.textContent);

    balas
    0
  • Batalbalas