WebPack4之打包css、image、js

首先需要webpack工具:

npm i webpack -s

然后就是打包图片用到的file-loader

npm i file-loader -s

最后就是打包css用到的css-loader(加载.css文件)、style-loader(使用<style>将css-loader内部样式注入到我们的HTML页面)

npm install style-loader css-loader -s

现在开始添加项目文件,一下是我自己的项目基本结构

首页,添加webpack.config.js文件,目录/build/webpack.config.js,这个文件是一个 node.js 模块,返回一个 json 格式的配置信息对象,或者通过 --config 选项来指定配置文件

const config = {
    mode: 'development',//mode:模式,development:开发模式。会将 process.env.NODE_ENV 的值设为 development。启用 NamedChunksPlugin 和 NamedModulesPlugin。
    entry: '../src/main.js',//入口文件 可以是多个,打包后对应多个文件
    output: {
        filename: '[name].js',//出口文件名称
        path: __dirname + '/../dist'//出口文件存放目录,无则自动创建
    },
    module: {
        rules: [ // 其中包含各种loader的使用规则
            {
                test: /\.css$/, // 正则表达式,表示打包.css后缀的文件
                use: ['style-loader', 'css-loader'], // 针对css文件使用的loader,注意有先后顺序,数组项越靠后越先执行
            },
            {
                test: /\.(png|jpg|gif|svg)$/,
                use: {
                    loader: "file-loader",
                    options: {
                        outputPath: '/static/images/',//输入文件目录
                        limit: 2048 //当图片大小超过2048个字节的时候,将打包的图片存在/static/images/文件夹中,否则直接改为base64格式放在mian.js中,可以减少http请求
                    }
                }
            }
        ]
    },
    watch: true // 监听文件改动并自动打包
};

module.exports = config;

然后添加main.js文件,目录/src/main.js,该文件是打包入口文件

let _merge = require('../static/js/index.js'); //引入js
let _jpg = require('../static/images/top.jpg'); //引入图片
let _css = require('../static/css/index.css'); //引入css

//渲染图片
document.getElementsByTagName('body')[0].innerHTML = `<img src="../dist${_jpg}" />`;

对应的静态文件

index.css

body{
    background-color: black;
    widows: 100vw;
    height: 100vh;
}
img{
    display: block;
    position: relative;
    top:50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

top.jpg

index.js

console.log('这是打包后的代码');

最后添加一个index.html 在浏览器执行打包后的代码

<html>

<head data-n-head="">
    <title data-n-head="true">网站标题</title>
    <meta data-n-head="true" charset="utf-8">
    <meta data-n-head="true" name="viewport" content="width=device-width, initial-scale=1">
    <meta data-n-head="true" charset="utf-8">
    <meta data-n-head="true" name="keywords" content="网站搜索关键字">
    <meta data-n-head="true" data-hid="description" name="description" content="网站描述">
</head>

<body>

    <script src="../dist/main.js"></script>
</body>

</html>

打开控制台,到/build目录下执行 webpack,输出结果为:

在浏览器中打开/src/index.html文件,最终效果如下:

至此,一个简单的webpack打包流程已完成,希望对各位有所帮助。

 

 

你千万不要见怪,城市是一个几百万人一起孤独生活的地方。

——梭罗

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值