Webpack entry output 单入口与多入口

 

entry

entry: 指定打包入口

理解依赖图

webpack是一个模块打包器
webpack把一切资源都当成模块
模块之间存在依赖关系

根据入口文件找到依赖,依赖之中又有依赖,所有依赖形成依赖树,将依赖文件加入依赖图
遍历完之后生成打包资源

单入口

entry的值是相对路径,总是相对于webpack.config.js去查找指定路径下的文件
webpack以entry中的文件作为打包入口,去查找依赖关系,从而构建应用

// 单入口
module.exports = {
    entry:'./src/index.js',
    output: {
        // 指定输出目录
        path: path.join(__dirname, 'dist'),
        // 指定打包之后的输出文件名称
        filename: 'indexjs'
    },
}

多入口

不管是单入口还是多入口,在output里面都只有一个output一个filename属性
可以用占位符保证文件名的唯一性
单入口可以用filename写死,但多入口必须通过占位符区分
多入口最终会生成多个打包文件

module.exports = {
  entry:{
    app:'./src/index.js',
    search:'./src/search.js'
  },
  output:{
    filename:'[name].js',
    path:__dirname+'/dist'
  }
}

以下将配置输出

dist/app.js
dist/search.js

两个入口输出两个文件,配合占位符'[finename].js'使用

'use strict';

const path = require('path');

module.exports = {
    // 入口 指定入口文件
    entry: {
        app:'./src/index.js', 
        search:'./src/search.js'
    },
    // 出口 
    output: {
        // 指定输出目录
        path: path.join(__dirname, 'dist'),
        // 指定输出文件名
        filename: '[name].js'
    },
    // 生成模式还是开发模式
    mode: 'production'
};

posted @   IslandZzzz  阅读(305)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
历史上的今天:
2019-09-24 7 JavaScript函数调用&this关键字&全局对象&函数调用&闭包
2019-09-24 6 JavaScript函数&内置构造&函数提升&函数对象&箭头函数&函数参数&参数的值传递与对象传递
2019-09-24 5 JSON&与JavaScript转换&JavaScript:void(0)&JavaScript代码规范
点击右上角即可分享
微信分享提示