webpack-基礎(chǔ)配置

前言

僅適用于webpack4.+!

僅適用于webpack4.+!

僅適用于webpack4.+!

webpack的文檔其實(shí)已經(jīng)很詳細(xì)了,也在網(wǎng)上找了一些教程,總結(jié)下來(lái)還是官方文檔更加靠譜??赡苁敲總€(gè)人的理解與表達(dá)的偏差。為了把流程按照自己能夠接受的方式梳理一遍,決定文字記錄一下。

開(kāi)始

基本安裝

  1. 進(jìn)入指定目錄,創(chuàng)建項(xiàng)目文件夾

    cd code
    mkdir webpack-demo
    
  2. 進(jìn)入項(xiàng)目文件夾,初始化npm

    cd webpack-demo
    npm init
    //執(zhí)行之后,一直回車至確認(rèn)yes之后
    //或者是直接執(zhí)行以下代碼跳過(guò)詢問(wèn)
    npm init -y
    
  3. 安裝webpack

    npm install webpack webpack-cli --save-dev
    //局部安裝
    
  4. 目錄結(jié)構(gòu)

    src文件夾用來(lái)存放源代碼(用來(lái)編輯的代碼)dist文件夾用來(lái)存放分發(fā)代碼(優(yōu)化處理后用來(lái)發(fā)布的代碼)

      webpack-demo
      |- package.json
    + |- /dist
    +   |- index.html
    + |- /src
    +   |- index.js
    
  5. 調(diào)整package.json文件移除main入口,確保安裝包是私有的

      {
        "name": "webpack-demo",
        "version": "1.0.0",
        "description": "",
    +   "private": true,
    -   "main": "index.js",
        "scripts": {
          "test": "echo \"Error: no test specified\" && exit 1"
        },
    

創(chuàng)建一個(gè) bundle 文件

jquery為例

  1. 要在 index.js 中打包jquery 依賴,我們需要在本地安裝 library

    npm install --save jquery
    

    注意:--save-dev 是你開(kāi)發(fā)時(shí)候依賴的東西,--save 是你發(fā)布之后還依賴的東西

  2. src/index.js中通過(guò) import 引入 jquery

    import $ from 'jquery'
    
  3. 生成bundle文件

    • 直接生成,通過(guò)運(yùn)行以下命令直接生成main.js文件至dist文件夾內(nèi)

      npx webpack
      
    • 指定出口入口

      npx webpack src/index.js --output dist/main.js
      

注意:npx可以運(yùn)行在初始安裝的 webpack 包(package)的 webpack 二進(jìn)制文件(./node_modules/.bin/webpack

使用配置文件并優(yōu)化執(zhí)行命令

雖然webpack4可以自動(dòng)幫我們處理,但是我們絕大多數(shù)時(shí)候還是想要擁有對(duì)代碼更強(qiáng)的掌控能力,所以我們還是需要去學(xué)習(xí)如何配置webpack(雖然webpack的配置真的很操蛋)

  1. 新建配置文件webpack.config.js

    const path = require('path');
    
    module.exports = {
      entry: './src/index.js',
      output: {
        filename: 'bundle.js',
        path: path.resolve(__dirname, 'dist')
      }
    };
    
  2. package.json里添加scripts

      {
        "name": "webpack-demo",
        "version": "1.0.0",
        "description": "",
        "main": "index.js",
        "scripts": {
          "test": "echo \"Error: no test specified\" && exit 1",
    +     "build": "webpack"
        },
    

現(xiàn)在,通過(guò)npm run build就可以運(yùn)行了!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容