码迷,mamicode.com
首页 > Web开发 > 详细

webpack中图片的引用

时间:2017-12-12 13:40:42      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:ade   就会   var   设置   pack   文件中   mit   padding   color   

module:{
         rules: [
      {
        test: /\.css$/,
        use: [ style-loader, css-loader ]
      },
      {
        test: /\.png$/,
        use: { loader: url-loader, options: { limit: 100000 } },
      },
      {
        test: /\.jpg$/,
        use: [ file-loader ]
      }
    ]
    
    }

首先安装上面所用到的loader.也可以不用file-loader,url-loader本身就是基于file-loader的。
url-loader封装了file-loader。url-loader不依赖于file-loader,即使用url-loader时,只需要安装url-loader即可,不需要安装file-loader,因为url-loader内置了file-loader

rules: [
{
test: /\.css$/,
use: [ ‘style-loader‘, ‘css-loader‘ ]
},
{
test: /\.(png|jpg)$/,
use: { loader: ‘url-loader‘, options: { limit: 100 } },
}
]



1.在js文件中引用图片文件时,需要使用require(‘img.png‘)进行引入。

document.getElementById("app").style.backgroundImage=url(+require(./3.jpg)+);

或者

var imgUrl=require(../images/1.jpg);

document.getElementById("app").style.backgroundImage=url(‘+imgUrl+‘)‘;
);

最终在dist的目录下会出现该jpg文件。不能再js里直接写路径如(url(‘./3.jpg‘)),因为打包时所有js代码不会改变,路径就还是这个路径,但是打包后的文件输出路径和原来不一样了,路径就会找不到。

2.在css中,就可以按照原始的方法引入图片了。file-loader(url-loader)会将url(‘./3.jpg‘)转换为url(require(‘./3.jpg‘)),打包后在dist目录下会出现该图片文件。

body {
  padding: 50px;
  font: 14px "Lucida Grande", Helvetica, Arial, sans-serif;
  background: url(../images/2.jpg) no-repeat;
  width:100%;
  height:500px;
}

 

3.在html中,如果按照原始的方法设置图片路径,打包后的文件路径也是不会改变的。所以在dist目录下,文件的路径就会找不到。

 

webpack中图片的引用

标签:ade   就会   var   设置   pack   文件中   mit   padding   color   

原文地址:http://www.cnblogs.com/BlingSun/p/8027197.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!