zoukankan      html  css  js  c++  java
  • webpack 3.X学习之图片处理

    CSS中图片处理

    在src目录下新建一个images目录,把图片放入images文件夹中;在index.html文件中增加一个div标签:

    /src/index.html:

    <div id="image"></div>
    

    编写css,给刚刚增加的div标签添加背景图片:

    /src/css/index.css:

    #image{
        background: url('../images/webpack.jpg');
         497px;
        height: 270px;
    }
    

    安装loader:

    npm install --save-dev file-loader url-loader
    

    在webpack.config.js中配置loader:

    module:{
        rules:[
            {
                test:/.(png|jpg|gif)$/,
                use:[{
                    loader:'url-loader',
                    options:{
                        limit:500000,
                        outputPath:'images/'
                    }
                }]
            }
        ]
    }
    

    url-loader与file-loader

    file-loader:解决引用路径的问题;

    url-loader:如果图片较多,会发很多http请求,降低页面性能,url-loader将引入的图片编码,生成dataURL;url-loader会提供一个limit参数(单位B),小于limit字节的图片会被转为dataURL,大于limit的会使用file-loader进行copy;outputPath是图片分离后的路径;

    简单说两者关系,url-loader封装了file-loader,url-loader不依赖file-loader,即使用url-loader时,只需要安装url-loader即可,不需要安装file-loader;

    CSS中图片路径处理

    利用extract-text-webpack-plugin插件将CSS文件分离出来,但是CSS里的图片路径并不正确,这里使用publicPath解决;

    publicPath是在webpack.config.js文件的output选项中,主要作用是处理静态文件路径的;

    声明一个website对象:

    const website = {
        publicPath:'http://localhost:1608/'
    }
    

    这里的IP和端口,必须和devServer配置的IP和端口一致。

    配置output选择:

    output:{
        path: path.resolve(__dirname, 'dist'),
        filename: '[name].js',
        publicPath: website.publicPath
    }
    

    HTML中图片处理

    在webpack中是不喜欢你使用标签<img>来引入图片的,但是作前端特别热衷于这种写法,国人也为此开发了一个:html-withimg-loader。他可以很好的处理我们在html 中引入图片的问题。

    安装loader:

    npm install --save-dev html-withimg-loader
    

    在webpack.config.js中配置loader:

    module:{
        rules:[
            {
                test:/.(htm|html)$/,
                use:["html-withimg-loader"]
            }
        ]
    }
    

    参考地址:

  • 相关阅读:
    html5-本地数据库的操作
    html5_storage存取实例
    html5-表单常见操作
    js操作注意事项
    php扩展地址下载
    php serialize序列化对象或者数组
    php_memcahed 使用方法
    php_memcahed telnet远程操作方法
    php_memcahed 安装
    Liunx centos 系统 修改hostname
  • 原文地址:https://www.cnblogs.com/hawk-zz/p/7884359.html
Copyright © 2011-2022 走看看