首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用浏览器和node.js框架无关的Nx创建可构建的可发布库

如何使用浏览器和node.js框架无关的Nx创建可构建的可发布库
EN

Stack Overflow用户
提问于 2022-01-01 21:20:55
回答 1查看 3.4K关注 0票数 2

我有一个monorepo (),它有许多用@nrwl/js生成的库。这些库相互依赖。它们是小型实用程序库,我打算将它们作为单独的包发布在NPM上。

根据Nx文档:

@nrwl/js如果您想要的话,特别有用。

  • 在现有的Nx工作区中创建与框架无关的、普通的TypeScript库(比如在您的React、Node或角应用程序中使用)
  • 将TypeScript包发布到NPM

然而,我现在意识到,与@nrwl/js相关联的构建命令并没有考虑库对其他库的依赖,以便将它们作为peerDependencies包含到其可发布的package.json中。它看起来也只是一个简单的公共构建,它将与node.js兼容,但不与浏览器兼容。

我知道,如果你把一个库标记为可发表的话,当你用它构建一个库时,@nrwl/angular会帮你处理所有的东西。我的问题是,如何获得相同的行为,但对于一个库,它不是用于角度的,而是用于任何框架或环境中的一般目的Javascript。

现在还处于开发阶段,所以如果我的问题的解决方案涉及到使用其他Nx生成器重新生成库,那么对我来说这样做不会太麻烦,我会考虑的。

编辑

此后,我将build更改为@nrwl/node,它具有buildablepublishable选项,并以我所需的方式运行。

我相信@nrwl/js最终会获得这种能力,但在2022-01-05时它还没有。目前,希望在NPM上发布库的人可能应该使用@ new /node来生成他的新库项目,而不是@new/js。

EN

回答 1

Stack Overflow用户

发布于 2022-01-18 03:52:42

如果要将NPM包发布为Node.js和浏览器使用的“通用包”,则需要将其构建为UMD,以涵盖大多数消费者环境。

虽然现代浏览器支持ES模块(importexport),但您可能需要额外的设置步骤来使用它们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70551948

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档