Tanya soalan:
目录
__ src
|_ assets
|_imgs
|_ imgloading.gif
|_ imgerror.jpg
__ static
|_ imgloading.gif
|_ imgerror.jpg
// src/main.js
Vue.use(VueLazyload, {
error: './assets/imgs/imgerror.jpg',
loading: './assets/imgs/imgloading.gif',
preLoad: 1,
attempt: 1
});
Pelaksanaannpm run dev
在浏览器中报错http://localhost:8080/assets/images/.... 找不到
,把上面的路径改成/src/assets/imgs/imgerror.jpg
juga melaporkan ralat.
Kemudian saya meletakkan imej di bawah folder statik pada tahap yang sama seperti src, dan menulis semula kod:
// src/main.js
Vue.use(VueLazyload, {
error: '../static/imgerror.jpg',
loading: '../static/imgloading.gif',
preLoad: 1,
attempt: 1
});
Gambar boleh dimuatkan dengan jayanya. Saya fikir saya tidak mempunyai petunjuk untuk masa yang lama.
./assets/imgs/imgerror.jpg Nampaknya tiada folder imgs dalam direktori anda
Dikatakan bahawa laluan dalam templat akan dihuraikan oleh webpack, manakala laluan dalam js perlu dirujuk melalui import, memerlukan atau meletakkan imej di bawah statik untuk rujukan
memerlukan('./assets/imgs/imgerror.jpg')