前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >webpack 多页面配置

webpack 多页面配置

作者头像
青梅煮码
发布于 2023-03-13 08:06:07
发布于 2023-03-13 08:06:07
93100
代码可运行
举报
文章被收录于专栏:青梅煮码青梅煮码
运行总次数:0
代码可运行

注意

  • 弃用 npm run build & npm run dev & npm run dll
  • 改成 box build & box dev & box dll
  • link npm link 将 box 命令链接到全局

本章内容

  1. 使用
  2. 改造为脚手架
  3. 多页面配置

使用

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
box build # 不加参数则会编译所有页面,并清空 distbox dev   # 默认编译 index 页面

参数

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# index2 是指定编译的页面。不会清空 dist# report 开启打包分析box build index2 --reportbox dev index2 --report

改造为脚手架

分成三个命令,进行不同操作

  • build
  • dev
  • dll

bin/box.js

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#!/usr/bin/env node

const chalk = require("chalk");
const program = require("commander");
const packageConfig = require("../package.json");
const { cleanArgs } = require("../lib");
const path = require("path");
const __name__ = `build,dev,dll`;

let boxConf = {};
let lock = false;

try {
  boxConf = require(path.join(process.cwd(), "box.config.js"))();
} catch (error) {}

program
  .usage("<command> [options]")
  .version(packageConfig.version)
  .command("build [app-page]")
  .description(`构建开发环境`)
  .option("-r, --report", "打包分析报告")
  .option("-d, --dll", "合并差分包")
  .action(async (name, cmd) => {
    const options = cleanArgs(cmd);
    const args = Object.assign(options, { name }, boxConf);
    if (lock) return;
    lock = true;
    if (boxConf.pages) {
      Object.keys(boxConf.pages).forEach(page => {
        args.name = page;
        require("../build/build")(args);
      });
    } else {
      require("../build/build")(args);
    }
  });

program
  .usage("<command> [options]")
  .version(packageConfig.version)
  .command("dev [app-page]")
  .description(`构建生产环境`)
  .option("-d, --dll", "合并差分包")
  .action(async (name, cmd) => {
    const options = cleanArgs(cmd);
    const args = Object.assign(options, { name }, boxConf);
    if (lock) return;
    lock = true;
    require("../build/dev")(args);
  });

program
  .usage("<command> [options]")
  .version(packageConfig.version)
  .command("dll [app-page]")
  .description(`编译差分包`)
  .action(async (name, cmd) => {
    const options = cleanArgs(cmd);
    const args = Object.assign(options, { name }, boxConf);
    if (lock) return;
    lock = true;
    require("../build/dll")(args);
  });

program.parse(process.argv).args && program.parse(process.argv).args[0];
program.commands.forEach(c => c.on("--help", () => console.log()));

if (process.argv[2] && !__name__.includes(process.argv[2])) {
  console.log();
  console.log(chalk.red(`  没有找到 ${process.argv[2]} 命令`));
  console.log();
  program.help();
}

if (!process.argv[2]) {
  program.help();
}

多页面配置

box.config.js

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
module.exports = function(config) {
  return {
    entry: "src/main.js", // 默认入口
    dist: "dist", // 默认打包目录
    publicPath: "/",
    port: 8888,
    pages: {
      index: {
        entry: "src/main.js",
        template: "public/index.html",
        filename: "index.html"
      },
      index2: {
        entry: "src/main.js",
        template: "public/index2.html",
        filename: "index2.html"
      }
    },
    chainWebpack(config) {}
  };
};
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-05-22 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
德摩根定律如何应用到人工智能?
德摩根定律(De Morgan's Laws)在人工智能(AI)中具有广泛的应用,尤其是在逻辑推理、知识表示、自然语言处理和机器学习等领域。它通过简化复杂的逻辑表达式和条件判断,帮助提高算法的效率和可解释性。以下是德摩根定律在人工智能中的具体应用及其作用:
jack.yang
2025/04/26
1070
德摩根定律如何优化机器学习模型?
德摩根定律(De Morgan's Laws)在机器学习中的应用主要体现在逻辑表达式的化简和优化上。虽然它本身并不是直接训练模型的工具,但它可以通过优化特征工程、模型解释性和算法效率等方面间接地提升机器学习模型的表现。以下是德摩根定律如何优化机器学习模型的具体场景及其作用:
jack.yang
2025/04/26
930
【程序中的数学】利用德摩根定律简化布尔运算
今天说说德摩根定律在编程中的实践,题目看的很吓人,其实只要有一点点的高中数学知识就能看懂,而且这部分知识掌握后可以很快的运用到项目中,投资收益比非常高。
卤代烃
2020/10/27
2.6K0
【程序中的数学】利用德摩根定律简化布尔运算
逻辑学中常见的定义、概念、运算符和其他基本要素
辑学是研究推理和论证形式的学科,其核心目标是分析命题之间的关系、推导规则以及论证的有效性。以下是逻辑学中常见的定义、概念、运算符和其他基本要素的全面总结:
jack.yang
2025/04/26
1910
有哪些算法因德摩根定律性能提升?
德摩根定律(De Morgan's Laws)虽然本身是一个逻辑学上的定理,但在某些算法和计算场景中,它确实可以通过简化布尔表达式或优化条件判断来间接提升性能。以下是一些可能因德摩根定律而受益的算法及其应用场景:
jack.yang
2025/04/26
760
软考:逻辑运算、算术运算、离散数学(命题逻辑、图论、概率统计)学习指南
软件设计师考试是全国计算机技术与软件专业技术资格(水平)考试(简称“软考”)中的重要科目之一。该考试旨在评估考生在软件开发、设计、分析及相关领域的专业技能和知识水平。通过软件设计师考试的人员,通常具备扎实的计算机基础知识、较强的逻辑思维能力以及系统分析与设计能力,能够胜任软件开发、软件测试、系统设计等相关工作。
码事漫谈
2025/04/26
1300
软考:逻辑运算、算术运算、离散数学(命题逻辑、图论、概率统计)学习指南
离散数学题目收集整理练习(期末过关进度80%~100%)完结撒花
要将主析取范式转化为主合取范式,或将主合取范式转化为主析取范式,我们需要应用一些逻辑等价的转换规则。这些规则包括德摩根定律、分配律、结合律等。
命运之光
2024/03/20
3170
离散数学题目收集整理练习(期末过关进度80%~100%)完结撒花
可读代码编写炸鸡七 - 表达式太长就拆
这么一大串,其实已经是一个超长的表达式了,而当时我们就利用了一些方法将这个表达式拆分了。
syy
2020/06/09
6040
【数理逻辑】命题逻辑的等值演算与推理演算 ( 命题逻辑 | 等值演算 | 主合取 ( 析取 ) 范式 | 推理演算 ) ★★
联结词 : 上一篇博客 【数理逻辑】谓词逻辑 ( 个体词 | 个体域 | 谓词 | 全称量词 | 存在量词 | 谓词公式 | 习题 ) 三. 联结词 章节讲解了联结词 ;
韩曙亮
2023/03/28
1.2K0
离散数学与组合数学-数理逻辑-01命题与联结词
命题:我们对确定对象做出的陈述句称为命题(propositions and statements 命题或陈述)。当判断为真时,该命题为真,否则为假。
IT从业者张某某
2023/10/16
3380
离散数学与组合数学-数理逻辑-01命题与联结词
布尔代数入门
布尔代数是计算机的基础。没有它,就不会有计算机。 布尔代数发展到今天,已经非常抽象,但是它的核心思想很简单。本文帮助你理解布尔代数,以及为什么它促成了计算机的诞生。 我依据的是《编码的奥妙》的第十
ruanyf
2018/04/12
1.2K0
布尔代数入门
【位运算】只出现一次的数字 II,数电的知识终于用上了!
https://leetcode-cn.com/problems/single-number-ii/
机器视觉CV
2020/07/23
7390
【位运算】只出现一次的数字 II,数电的知识终于用上了!
命题逻辑详解
​ 只有确定了x是某类事物中的具体个体,或对x使用量词进行量化之后才能得到命题。(如:存在整数x,使 x是5的倍数)
From Zero
2021/03/13
2.3K0
【数理逻辑】命题逻辑 ( 命题逻辑推理正确性判定 | 形式结构是永真式 - 等值演算 | 从前提推演结论 - 逻辑推理 )
方法一 : 写出推理的 形式结构 , 查看该推理的形式结构是不是 永真式 ; 如果是永真式 , 那么该推理是正确的 ;
韩曙亮
2023/03/28
7900
嵌入式开发基础整理
卡诺图(Karnaugh Map)是逻辑函数的一种图形表示方法。它是一种平面方格图,主要用于化简布尔代数(逻辑代数)表达式。在数字电路设计中,它能够帮助工程师和设计者以直观的方式简化逻辑电路,减少电路中门电路的数量,从而降低成本、提高电路的可靠性和工作速度。
算法之名
2025/02/06
1070
嵌入式开发基础整理
离散数学-考纲版-01-命题逻辑
离散数学知识点总结(5):蕴含式;命题的推理理论;逻辑推演的方法;推理的有效性证明
IT从业者张某某
2023/10/16
5290
离散数学-考纲版-01-命题逻辑
人工智能之经典逻辑推理
人工智能课程复习笔记专题  人工智能绪论   人工智能之知识表示   人工智能之搜索方法  人工智能之经典逻辑推理  人工智能之专家系统  人工智能之不确定推理方法   人工智能之机器学习
用户7886150
2021/01/29
2.2K0
一文理解NP完全理论,NP问题,NPC问题
在以往的算法中,所接触到的大都是多项式时间内可完成的算法,比如O(n),O(nlogn),O(n^2)…,但仍存在一些算法的时间复杂度为:O(n^logn),O(2^n),O(n!)是非多项式时间算法,当此类程序规模一旦过大,便成为目前的计算机解决不了的难题。因此尝试用NP完全理论进行理解。
丹牛Daniel
2022/11/18
7.4K0
一文理解NP完全理论,NP问题,NPC问题
FPGA:逻辑函数的卡诺图化简法
的最小项是 n 个因子的乘积,每个变量 都以它的原变量或非变量的形式在乘积项中出现,且仅出 现一次。一般 n 个变量的最小项应有
timerring
2023/02/03
8610
【数理逻辑】命题逻辑 ( 等值演算 | 幂等律 | 交换律 | 结合律 | 分配律 | 德摩根律 | 吸收率 | 零律 | 同一律 | 排中律 | 矛盾律 | 双重否定率 | 蕴涵等值式 ... )
基于上一篇博客 【数理逻辑】命题逻辑 ( 命题与联结词回顾 | 命题公式 | 联结词优先级 | 真值表 可满足式 矛盾式 重言式 ) ;
韩曙亮
2023/03/28
1.3K0
推荐阅读
相关推荐
德摩根定律如何应用到人工智能?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验