首页 > 解决方案 > 如何将前端库和 Node 工具组合在一个包中,而不会出现前端臃肿的情况?

问题描述

我有两个库,我正在考虑将它们合并为一个。一个是前端库(虽然它可以在 Node 中使用),另一个是命令行工具,带有一些 Node 依赖项。它们在功能上密切相关和互补。通过拥有一个可以以两种方式使用的库来解释它们的使用会更方便和更简单:

import { ... } from mylibrary

npx mylibrary ...

但是,我担心如果我只是简单地将它们组合起来,并将所有依赖项放在一起,那么前端用户将在前端获得所有后端 Node 依赖项。

两个部分都使用 CommonJS: module.exports = { ... }。如果我使用 ES 模块重写它,那么它在某些情况下会变得难以使用。(事实上​​,我在尝试在 Vue-CLI 项目中导入前端时遇到了问题)。

这个问题有好的解决方案吗?还是我的一些假设不正确?(例如dependencies,即使没有 ES 模块,也许并不是所有的都被 Webpack 和类似的自动捆绑?)

图书馆在这里这里

标签: node.jsnpmwebpackpackagingbundling-and-minification

解决方案


推荐阅读