webpack模块加载css文件及图片地址

webpack支持css文件加载并打包,只需安装相应加载器并在配置文件中配置 。

加载的css文件内容会与该模块里的js内容混合封装,这样做的好处是一个js文件包含了所有的css与js内容,有效减少了http请求次数,显著提高了页面响应性能的用户体验。

加载css文件时,如果css里含有图片的引用地址,编译时webpack会将图片资源处理并输出到设置的publicPath参数位置,该参数可以是以页面为基准的相对地址,也可以是以根目录为基准的绝对地址。url-laoder会在这个地址下兴建一个image文件夹用来存放处理过后的图片。

  //入口文件输出配置
    output: {
        path: ‘./js‘,
        filename: ‘[name].js‘,
        publicPath:"/js/"
    },

    //插件项
    plugins: [commonsPlugin,new webpack.ProvidePlugin({
        $ : "jquery",
        /*React:"react",
        ReactDOM:"react-dom",*/
    }),/*new webpack.optimize.CommonsChunkPlugin(‘vendor‘, ‘vendor.min.js‘)*/
        ],

    module: {
        //加载器配置
        loaders: [
            { test: /\.css$/, loader: ‘style-loader!css-loader‘ },
            { test: /\.(js|jsx)$/, loader: ‘jsx-loader?harmony‘ },
            { test: /\.scss$/, loader: ‘style!css!sass?sourceMap‘},
            { test: /\.(png|jpg)$/, loader: ‘url-loader?limit=25000&name=images/[hash:8].[name].[ext]‘},
            { test: /\.(hbs|html)$/, loader: "handlebars"},

        ]
    },

如果你在编译时报错,可是你检查确实安装好了各种加载器,编译时依然报错,友情提醒这时候你应该去重新安装下file-loader,我就曾在图片地址解析时莫名报错,查了许久,重装file-loader解决了问题。

时间: 2024-12-06 21:03:36

webpack模块加载css文件及图片地址的相关文章

asp.net MVC发布iis无法加载css,js和图片

今天真够郁闷的,遇到了在本地能运行的项目到了iis服务器那里就不行了,无法加载css,js和图片,这里说清楚一下先,关于asp.net 的MVC中这样的情况其实不少,但是之前遇到的是在visual studio运行的时候就已经不能加载css和js文件,那种情况一般都是路径的问题,改下页面代码就行,网上教程不少,而这个其实是一个CMS的开源系统.Orchard,国庆实在无聊,就想玩下这个asp.net MVC框架的CMS,而且是微软推荐的开源CMS,提到了就来说说这个吧,和国内的其他CMS对比起来

网页开发 之 javascript加载css文件

在正常情况下浏览器加载css文件一般有3个来源 (1)浏览器默认自带的 (2)在网页的head文件中加载 (3)在网页代码中夹杂插入 今天要介绍的是通过Javascript也可以去加载css文件 下面加入代码 var fileref = document.createElement('link'); fileref.setAttribute('rel', 'stylesheet'); fileref.setAttribute('type', 'text/css'); fileref.setAtt

jQuery_动态加载css文件实现方法

有时我们可能会需要使用 jQuery 来加载一个外部的 css 文件,如在切换页面布局时.思路是创建一个 link 元素,并将它添加到 标记中即可,下边首先看看怎么使用 jQuery 来实现. 下边是我喜欢的写法: ? 1 2 3 4 5 6 $("<link>") .attr({ rel: "stylesheet", type: "text/css", href: "site.css" }) .appendTo(

Chrome浏览器加载CSS文件TTFB waiting超时的奇葩问题

今天本来调试 requirejs 加载js异常的问题,试了下Chrome浏览器,结果意外发现这个 CSS 加载异常的BUG,非常非常奇怪. 本地测试环境是 wi7x64 安装的 XAMPP 3.2.1 服务器套件没什么特殊配置. 目前就发现只对下面这段 css 代码有异常 seta.css: @charset "utf-8"; html { font-size: 125%; } html,body,h1,h2,h3,h4,h5,h6,p,ul,ol,dl,dt,dd { padding

WebView加载HTML时替换图片地址

这两天做项目时,因为实际情况,需要将获取到的html字符串加载出来,并将所有img标签的地址加上主机 开始的时候,我使用系统自带的方法 1 NSURL *baseURL = [NSURL URLWithString:@"主机"]; 2 [webView loadHTMLString:htmlStr baseURL:baseURL]; baseURL会在加载图片的时候自动加到图片地址的前面,但是这样写有个问题,就是主机为http://www.baidu.com的话,这样做没问题,若主机为

AngularCSS--关于angularjs动态加载css文件的方法(仅供参考)

AngularCSS CSS on-demand for AngularJS Optimize the presentation layer of your single-page apps by dynamically injecting stylesheets as needed. AngularCSS listens for route (or states) change events, adds the CSS defined on the current route and remo

jQuery动态加载css文件实现方法

$("<link>").attr({ rel: "stylesheet",type: "text/css",href: "site.css"}).appendTo("head"); 一个完整的实例: <html> <head> <script type="text/javascript" src="http://ajax.googlea

基于webpack模块加载,ts里对系统对象prototype的扩展

用systemJS的时候,这样写是可以: constructor() { // 对Date的扩展,将 Date 转化为指定格式的String // 月(M).日(d).小时(h).分(m).秒(s).季度(q) 可以用 1-2 个占位符, // 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字) // 例子: // (new Date()).format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:0

透过现象看webpack处理css文件中图片路径转换的具体过程

webpack是目前使用比较流行的一个前端模块打包器,前端的任何资源都被当成一个模块来处理,如图片.css文件等等.在基于webpack构建的前端项目中,一般都会配置有关css文件处理的规则,这其中也包括css文件中图片资源的处理,那么webpack到底是怎么处理它的呢?笔者之前也遇到过类似图片路劲的问题,为此还写过一篇博文webpack生成的css文件background-image url图片无法加载.今天就来说说webpack是怎么处理css文件中的图片路径的,首先上一个具体的例子. 一个