builder
builder copied to clipboard
Compress the published package `fec-builder`
简单尝试了下,目前主要的障碍在:
-
依赖
__dirname/__filename的代码(如读取 preset config 的逻辑)会行为不正确(代码被 bundle 了)可以考虑通过获取 package (builder) root,然后往 package root 后边拼路径的方式来定位目标资源(如 preset config)
获取 package root 可以通过从当前文件路径向上找,直到找到最近的、包含
package.json文件的路径来实现;不过需要注意,ncc 构建出的dist/目录中也是有package.json文件的,因此这个做法会有问题 -
依赖
require.resolve获取某个依赖(如 webpack loader 或 babel preset)的绝对路径的逻辑会不正确(依赖被 bundle 了)考虑把这些依赖加到 ncc
externals里(跟着 builder 一起被安装);或者放到特定的目录里,通过拼接该特定目录来代替require.resolve逻辑 -
依赖中存在类似 1 / 2 的逻辑