Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Make two files instead of three

未关闭
#80 2 条评论 2 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
35/100
Issue 类型
功能
描述清晰度
基本清楚
活跃度
停滞
技术栈
javascript

调研方向

从 issue 中所示的 factor-bundle 命令开始,并使用 lib.js、main.js 和 checkout.js 重现该命令。跟踪该命令如何处理共享 bundle 和入口 bundle;完成的标准是生成所请求的 site bundle 和 checkout bundle,而不需要 ./main,也不产生 junk.js。

由索引模型根据 Issue 内容生成。

描述

Hey!

I effectively want to split out part of a file, instead of splitting out the common parts of two files.

Currently I have bundle.js, which contains everything used on the site. There is some checkout specific logic there that I only want on the checkout, so I want to split that stuff out into bundle-checkout.js, but then run both bundle.js and bundle-checkout.js in the checkout.

With factor-bundle by default, I would be running these files on the main site:

  • bundle-common.js
  • bundle.js

And these on the checkout:

  • bundle-common.js
  • bundle.js
  • bundle-checkout.js

It's pointless for me to have both bundle-common.js and bundle.js!

The best solution I've found so far is to add require('./main') to the top of the input bundle-checkout.js, which would mean that bundle.js is effectively an empty file and I can include bundle-common.js by itself, but then that generates a junk file.


lib.js:

module.exports = 'lib';

main.js:

var lib = require('./lib');
console.log(lib);

checkout.js:

require('./main');
console.log('special checkout logic');

And then the command:

browserify main.js checkout.js -p [ factor-bundle -o junk.js -o bundle-checkout.js ] -o bundle.js

Is there any way to do this without the require('./main') and the useless junk.js file?

Thanks, and sorry for the long question! I'll turn this into an article once it's been figured out so that nobody asks it again :)

主要语言
JavaScript
星标
397
派生
24
PR 合并指标
30 天内没有已合并 PR

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

browserify/factor-bundle 的其他 Issue

查看 browserify/factor-bundle 的全部 Issue

相似的 Issue

更多 JavaScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。