Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Memaparkan Imej Secara Dinamik dalam Aplikasi Vue.js dengan Webpack?

Bagaimana untuk Memaparkan Imej Secara Dinamik dalam Aplikasi Vue.js dengan Webpack?

Susan Sarandon
Lepaskan: 2024-11-14 15:21:02
asal
582 orang telah melayarinya

How to Dynamically Display Images in Vue.js Applications with Webpack?

Memaparkan Imej Dinamik dalam Aplikasi Vue.js dengan Webpack

Dalam aplikasi Vue.js, memberikan imej dinamik boleh terbukti mencabar apabila imej disimpan dalam pembolehubah dan diakses melalui fail laluan. Untuk mengatasinya, pembangun biasanya menghadapi masalah apabila menggunakan v-bind:src dengan nilai dikira yang mendapatkan semula nama fail imej.

Kaedah Asal:

<img v-bind:src="'../assets/' + pic + '.png'" v-bind:alt="pic">
Salin selepas log masuk

Masalah:

Pendekatan ini tidak memaparkan imej dinamik apabila imej nama fail disimpan dalam pembolehubah.

Penyelesaian:

Untuk menyelesaikannya, kaedah tersuai getImgUrl boleh ditakrifkan untuk mendapatkan semula URL imej secara dinamik dan mengikatnya pada atribut src bagi elemen img.

methods: {
  getImgUrl(pet) {
    var images = require.context('../assets/', false, /\.png$/)
    return images('./' + pet + ".png")
  }
},
Salin selepas log masuk
<!-- HTML -->
<img :src="getImgUrl(pic)" v-bind:alt="pic">
Salin selepas log masuk

Mengapa Kaedah Asal Gagal:

Kaedah asal gagal kerana Vue.js tidak dapat menyelesaikan rentetan laluan fail secara dinamik. Fungsi require.context membolehkan Vue mengakses aset statik dalam aplikasi, menjadikan kaedah getImgUrl sebagai penyelesaian yang lebih dipercayai.

Atas ialah kandungan terperinci Bagaimana untuk Memaparkan Imej Secara Dinamik dalam Aplikasi Vue.js dengan Webpack?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan