webpack个人学习笔记(一)

 

关于webpack----个人学习笔记

一、webpack初认识

   1.webpack配置

1.webpack是什么                   

 

           javascript应用程序得静态模块打包器

        2.webpack有什么作用

 

             模块化打包

             webpack会将项目得资源文件当成一个一个模块,模块之间会有依赖关系,webpack将会对这些有依赖关系得文件进行处理,让浏览器能够识别,最后将应用程序需要的每个模块打包成一个或者多个bundle

        3.webpack环境配置

             1.安装node js

      2.创建package.json文件 命令:npm init

             3.安装webpack

 

             本地安装: (推荐)

             npm install --save-dev webpack

             npm install --save-dev webpack-cli

             全局安装:

             npm install --global webpack webpack-cli

 

             打包

             默认 entry 入口 src/index.js

             默认 output 出口 dist/main.js

             打包模式:

             webpack --mode development

             webpack --mode production

   2.配置webpack.config.js

        1.新建一个webpack.config.js

        2.配置入口entry(所需打包得文件路径)

        3.配置出口 output

           1)path 指文件打包后的存放路径

           2)path resolve() 方法将路径或路径片段的序列处理成绝对路径

           3)__dirname 表示当前文件所在的目录的绝对路径

           4)filename是打包后文件的名称

                const path = require('path')    // 用来写路径的依赖

module.exports = {
    //单入口,单出口
    entry:'./public/index.js',//入口文件(打包文件路径)
    output:{//(出口文件)
        //path.resolve方法将路径或路径片段的序列处理成绝对路径
        //__dirname 表示当前文件所在的目录的绝对路径
        path:path.resolve(__dirname,'build'),
        //filename 是打包后文件的名称
        // filename:'bundle.js'
        filename:'[name].js'
    },
}    

二、入口 entry 和出口 output 进阶用法

   1.入口 entry

      1)单入口

           单文件:

例如: entry: './src/index.js'

          多文件:

                 在你想要多个依赖文件一起注入,并将它们的依赖导向到一个“chunck”时,

             传入数组的方式就很有用。

 例如: entry: [ './src/index.js', './src/index2.js', ....]

      2) 多入口

             例如:

entry:{

 pageOne: './src/pageOne/index.js',

 pageTwo: './src/pageTwo/index.js',

 pageThree: './src/pageThree/index.js'

}

   2.出口 output

      1)单出口

output: {

    path: path.resolve(__dirname, 'dist'),

    filename: 'bundle.js'

}

      2)多出口

output: {

    path: path.resolve(__dirname, 'dist'),

    filename: '[name].js'

}

 

 

 

webpack.config.js配置如下

const path = require('path');    // 用来写路径的依赖

module.exports = {
    // 单入口,单出口
    entry:'./public/index.js',// 入口文件(打包文件路径)
    output:{//(出口文件)
        // path.resolve方法将路径或路径片段的序列处理成绝对路径
        // __dirname 表示当前文件所在的目录的绝对路径
        path:path.resolve(__dirname,'build'),
        // filename 是打包后文件的名称
        // filename:'bundle.js'
        filename:'[name].js'
    },
    // 单入口,多文件
    // entry:['./public/index.js','./public/index2.js'],
    // output:{
    //     path:path.resolve(__dirname,'build'),
    //     filename:'bundle.js'
    // },
    // 多入口 对应多出口
    // entry:{
    //     pageOne:'./public/pageOne/index.js',
    //     pageTwo:'./public/pageTwo/index.js'
    // },
    // output:{
    //     path:path.resolve(__dirname,'build'),
    //     filename:"[name].js"
    // },
}

三、配置webpack-dev-server

   1.了解 webpack-dev-server

         webpack-dev-server 是用来配置本地服务器的,使用它可以为webpack打包生成的资源文件提供web服务。

 

         webpack-dev-server 主要提供两个功能:

           1)为静态文件提供web服务

           2)自动刷新和热替换(HMR)

   2.安装 webpack-dev-server

          npm install --save-dev webpack-dev-server

   3.配置webpack.config.js文件

devServer:{
    contentBase:'./build',//设置服务器访问的基本路径
    host:'localhost',//服务器的IP地址
    port:3000,//端口
    open:true //自动打开页面
},

 

 

   4.配置package.json文件

"scripts": {
    "start": "webpack-dev-server --mode development --config webpack.config.js"
},

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值