zoukankan      html  css  js  c++  java
  • webpack之urlloader running

    一.用file-loader编译不同后缀的图片

    1.配置webpeck.config.js文件

    const path = require('path');
    const htmlWebpackPlugin = require('html-webpack-plugin');
    module.exports={//node.js语法导出一个对象
        entry:'./src/app.js',
        output:{
            path:path.resolve(__dirname,'dist'),//绝对路径
            filename:'main.js',
        },
        plugins:[//生成html
            new htmlWebpackPlugin({
                filename:'index.html',
                template:'src/index.html'
            })
        ],
        module:{
            rules:[{
                    test:/\.js$/,
                    use:[{
                        loader:'babel-loader',
                        options:{
                            presets:['react']
                        }
                    },]},
                    {
                        test:/\.css$/,
                        use:['style-loader','css-loader']
                    },
                    {
                        test:/\.(jpg|png|gif|jpeg)$/,
                        use:['file-loader']
                    },
            ]
        },
        devServer:{
            open:true,//自动打开服务器首页
            port:9000,
            inline:true,
        }
    }

    2.在app.js文件中引入

    import  React    from  'React';
    import  ReactDOM from  'react-dom';
    import './common/css/style.css';
    import './common/css/app.css';
    import tu from  './common/img/11.jpg';
    const tu2 = require('./common/img/1.png');//全局方式引用
    ReactDOM.render(
        <div className='rea'>
            <img src={tu} alt=""/>
            <img src={tu2} />
        <img src={require('./common/img/1.png')} />//直接使用
        </div>,
        document.getElementById('cdd')
    );

    二、用url-loader编译不同后缀的文件

    1.配置url-loader,url-loader会将引入的图片编码,生成dataURl,小于约20Kb的图片生成打他URL

    const path = require('path');
    const htmlWebpackPlugin = require('html-webpack-plugin');
    module.exports={//node.js语法导出一个对象
        entry:'./src/app.js',
        output:{
            path:path.resolve(__dirname,'dist'),//绝对路径
            filename:'main.js',
        },
        plugins:[//生成html
            new htmlWebpackPlugin({
                filename:'index.html',
                template:'src/index.html'
            })
        ],
        module:{
            rules:[{
                    test:/\.js$/,
                    use:[{
                        loader:'babel-loader',
                        options:{
                            presets:['react']
                        }
                    },]},
                    {
                        test:/\.css$/,
                        use:['style-loader','css-loader']
                    },
                    {
                        test:/\.(jpg|png|gif|jpeg)$/,
                        use:[{
                            loader:'url-loader',
                            options:{
                                limit:20000
                            }
                        }]
                    },
            ]
        },
        devServer:{
            open:true,//自动打开服务器首页
            port:9000,
            inline:true,
        }
    }
    

      2.引入图片

    import  React    from  'React';
    import  ReactDOM from  'react-dom';
    import './common/css/style.css';
    import './common/css/app.css';
    import tu from  './common/img/11.jpg';
    import img2 from  './common/img/2.jpg';
    const tu2 = require('./common/img/1.png');
    ReactDOM.render(
        <div className='rea'>
            <img src={tu} alt=""/>
            <img src={tu2} />
            <img src={img2}/>
        <img src={require('./common/img/1.png')} />
        </div>,
        document.getElementById('cdd')
    );
    

      3. 运行 cnpm run dev,展示图片使用状况

  • 相关阅读:
    centos 7离线安装中文版GitLab
    Oracle表名、列名、约束名的长度限制
    使用sparsecheckout命令克隆“部分”代码
    C专家编程(1)
    搜索相关性
    今日进度
    今日进度
    今日进度
    今日进度
    今日进度
  • 原文地址:https://www.cnblogs.com/zxqblogrecord/p/8335683.html
Copyright © 2011-2022 走看看