[聚合文章] vue cli 关于使用绝对路径引用图片的问题

vue.js 2017-12-05 12 阅读

在页面中使用绝对路径可通过在js中用 require() 引入

data (){
    return {
        src: require('IMAGES/banner.jpg')
    }
}
<img :src="src">

样式里面似乎无法使用绝对路径,除非把图片资源都放到static里面,然后就可以这样引用

background: url("/static/images/banner.jpg") no-repeat;

但,放到static里面webpack打包后只会把资源复制到发布目录而不会把小图片优化为base64。
为了兼顾可以把图片资源优化,所以还是不适合把图片资源放到static,
但,在vue页面style标签里面写样式随着目录的深入有可能引用路径是:

background: url("../../../images/banner.jpg") no-repeat;

有个做法似乎可以省去一些麻烦:
把样式文件统一放到style文件夹里面,样式图片资源用相对路径,然后在style标签用src属性引入样式,这样就可以避免太多层的返回了~~~

── src
    ── images
        ── banner.jpg
    ── style
        ── index.scss
/*style*/
background: url("../images/banner.jpg") no-repeat;
<style src="STYLE/index" lang="scss"></style>

注:本文内容来自互联网,旨在为开发者提供分享、交流的平台。如有涉及文章版权等事宜,请你联系站长进行处理。