美文网首页webpackwebpack学习webpack
(3/24) 配置文件:入口和出口

(3/24) 配置文件:入口和出口

作者: wfaceboss | 来源:发表于2018-12-11 23:14 被阅读4次

在上一节中我们只是简单的尝了一下webpack的鲜,对其有了基本的了解,对于上一节当中的打包方式,在实际开发中并不使用,而是通过webpack的配置文件的方式进行设置的,所以该节就在上一节的基础上学一下配置文件的大体结构以及入口、出口文件的配置。

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

webpack.config.js就是webpack的配置文件,需要自己在项目根目录下手动建立(如下图):


webpack_config.png

建立好后我们对其进行配置。下面展示一个没有内容的标准webpack配置模版。
webpack.config.js:

module.exports={
    //入口文件的配置项
    entry:{},
    //出口文件的配置项
    output:{},
    //模块:例如解读CSS,图片如何转换,压缩
    module:{},
    //插件,用于生产模版和各项功能
    plugins:[],
    //配置webpack开发服务功能
    devServer:{}
}

简单解释一下相关配置项:
(1)entry:配置入口文件的地址,可以是单一入口,也可以是多入口。
(2)output:配置出口文件的地址,在webpack2.X版本后,支持多出口配置。
(3)module:配置模块,主要是解析CSS和图片转换压缩等功能。
(4)plugins:配置插件,根据你的需要配置不同功能的插件。
(5)devServer:配置开发服务功能。

1.1 entry选项(入口配置)

这个选项就是配置需要打包的文件一般是JavaScript文件(或CSS等其他文件),针对上一节的代码进行配置:
wepback.config.js中的entry选项:

//入口文件的配置项
entry:{
    //里面的entery是可以随便写的
    entry:'./src/entry.js'
},

1.2 output选项(出口配置)

出口配置是用来告诉webpack最后打包文件的地址和文件名称的。在上一节的基础上,我们需要把相关的文件打包到dist目录下,相关代码如下:
webpack.config.js的output选项:

 output:{
        //输出的路径,用了Node语法
        path:path.resolve(__dirname,'dist'),
        //输出的文件名称
        filename:'bundle.js'
    },

配置好入口与出口文件的全部代码如下:

const path = require('path');
module.exports={
    //入口文件的配置项
    entry:{
        entry:'./src/entry.js',
    },
    //出口文件的配置项
    output:{
        //输出的路径,用了Node语法
        path:path.resolve(__dirname,'dist'),
        //输出的文件名称
        filename:'bundle.js'
    },
    //模块:例如解读CSS,图片如何转换,压缩
    module:{},
    //插件,用于生产模版和各项功能
    plugins:[],
    //配置webpack开发服务功能
    devServer:{}
}

const path = require('path');使用了const,这是ES6的语法,如果对ES6还不熟悉,可以看看 ECMAScript 6(ES6)
path.resolve(__dirname,’dist’)就是获取了项目的绝对路径。
filename:是打包后的文件名称,这里我们起名为bundle.js。

2.打包

上述代码写完后,可以在webstorm终端中直接输入webpack就会进行打包,如图:


webpack命令.png

结果就是在dist目录下产生一个bundle.js文件,如图:


生成bundle文件.png

3.多入口、多出口配置

在webpack3.x中配置多入口、多出口是非常简单的,只需新增在entry中新增文件路径、同时修改出口文件名称即可,具体看下例代码:

3.1. 在src目录下新建一个entry2.js文件

src/entry2.js:

alert("Hello")

3.2 webpack.config.js配置修改

修改后的代码如下:

const path = require('path');
module.exports={
    //入口文件的配置项
    entry:{
        entry:'./src/entry.js',
        //这里我们又引入了一个入口文件
        entry2:'./src/entry2.js'
    },
    //出口文件的配置项
    output:{
        //输出的路径,用了Node语法
        path:path.resolve(__dirname,'dist'),
        //输出的文件名称
        filename:'[name].js'
    },
    //模块:例如解读CSS,图片如何转换,压缩
    module:{},
    //插件,用于生产模版和各项功能
    plugins:[],
    //配置webpack开发服务功能
    devServer:{}
}

可以看到入口文件entry中和文件output行进行了增加和修改,在入口文件配置中,增加了一个entry2.js的入口文件,这时候要打包的就有了两个入口文件。在文件output中我们把原来的bundle.js修改成了[name].js
[name]的意思是根据入口文件的名称,打包成相同的名称,有几个入口文件,就可以打包出几个文件。

3.3 修改后打包

打包后的结果如下图:


多入口、多出口.png

相关文章

  • (3/24) 配置文件:入口和出口

    在上一节中我们只是简单的尝了一下webpack的鲜,对其有了基本的了解,对于上一节当中的打包方式,在实际开发中并不...

  • 9、webpack多页应用

    webpack支持多页应用,需要配置入口和出口 1、入口配置 2、出口配置 3、 插件配置 webpack.con...

  • 入口和出口

    车站有两个地方最感人:入口和出口! 一个是不想让你走 一个是等你回来 有人慌张见面 有人简单告别

  • 出口入口

    游荡在东站路的出口 徘徊于来来往往的车流 本该照彻夜晚的明灯 却显得格外迷蒙 刚逃离一头吞食的巨兽 却又掉入一张光...

  • Tornado协程原理

    协程的定义 函数入口:有且只有一个入口出口:有且只有一个出口 协程入口:多个入口出口:多个出口特点:暂定,保留执行...

  • webpack入门(二):html-webpack-plugin

    一、入口、出口配置 1. 多入口、单出口 2. 多入口、多出口 二、生成页面插件:html-webpack-plu...

  • webpack 大纲

    入口和出口 单入口配置 多入口配置 loader 什么是loader css-loader less-loader...

  • 出口与入口

    听郑渊洁的家长课,听到了一个特别有趣的点! 安排好孩子的出入口! 刚开始可能误解了出入口,以为是生理的! 实质他指...

  • 出口与入口

    且说一行凶命案嫌疑人逃进了一家影院,捕头吩咐众捕快——严防死守影院各出口,让嫌犯逃无可逃,来个瓮中捉鳖。 孰料嫌犯...

  • 3-ifb虚拟接口

    QoS分为入口(Ingress)部分和出口(Egress)部分,入口部分主要用于进行入口流量限速(policing...

网友评论

    本文标题:(3/24) 配置文件:入口和出口

    本文链接:https://www.haomeiwen.com/subject/dupyhqtx.html