vue-lazyload使用圖片路徑的坑!!


1、在使用vue懶加載加載圖片的時候,發現在main.js引入圖片時,發現圖片路徑找不到出錯!!!

使用vue-cli腳手架快速生成的框架中,
src**同級目錄**中有static文件夾
src**子文件夾**中有assets文件夾
在使用vue-lazyload,設置error或loading屬性的圖片路徑時,

圖片在assets文件夾,就需要使用require()進行引入。

Vue.use(lazyLoad, {
  error: require('./assets/img/default-photo.png'),
  loading: require('./assets/img/default-photo.png')
})

圖片在static文件夾,就可以直接寫路徑了

Vue.use(lazyLoad, {
  error: require('../static/img/default-photo.png'),
  loading: require('../static/img/default-photo.png')
  
})

vue-lazyload是在main.js文件中引入,不會被webpack進行編譯,src中的文件會被webpack編譯,包括assets,assets文件夾中的圖片地址,會在編譯過程中改變。因此vue-lazyload無法正確獲得圖片地址,就不能顯示圖片了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM