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打包流程已完成,希望對各位有所幫助。

 

 

你千萬不要見怪,城市是一個幾百萬人一起孤獨生活的地方。

——梭羅

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章