美文网首页
vue项目静态资源(图片,字体)引用路径正确姿势

vue项目静态资源(图片,字体)引用路径正确姿势

作者: 团猫咪爱吃玉米 | 来源:发表于2018-12-26 11:39 被阅读20次

    首先,vue项目有两个地方可以存放静态资源。一个是assets文件夹,一个是static文件夹(地址栏输入static可以直接访问)。放到static里面webpack打包后只会把资源复制到发布目录而不会把小图片优化为base64。而assets内的资源会被webpack打包,比如图片,会被转为BASE64。为了兼顾图片资源优化,所以还是不适合把图片资源放到static。

    而当我们把这些资源放入assets文件夹时,当引入的图片是背景图片时,会报错。

     <img src="@/assets/logo.png" alt="">
    
    .bg {
        width: 100px;
        height: 200px;
        background: url('~@/assets/logo.png')
    }
    

    这个时候,还需配置build => util.js 里找到ExtractTextPlugin.extract增加一行:publicPath: '../../',主要解决背景图片路径的问题。

     return ExtractTextPlugin.extract({
          use: loaders,
          fallback: 'vue-style-loader',
          publicPath: '../../'
      })
    

    这样改动的原因是Vue打包完成的目录结构中,js/css文件与static目录的层级差了2级

    相关文章

      网友评论

          本文标题:vue项目静态资源(图片,字体)引用路径正确姿势

          本文链接:https://www.haomeiwen.com/subject/rhfhlqtx.html