node.js - 如何修改使用 TypeScript 构建的 npm 包

标签 node.js typescript npm

我想尝试对 npm 中发布的包进行一些更改? (我建议进行一些更改作为一个问题,但我认为它们足够简单,我可以尝试它们)。

https://www.npmjs.com/package/bt-presence#contributing--modifying

作者提供了一些有关如何修改包的信息,但对于第一次这样做的人来说还不够。

  • 我应该将 GitHub 存储库克隆到哪里?安装包的文件夹?我在我的主文件夹中尝试了它,但无法构建(未修改)。
  • 命令npm run build - 这是从哪里运行的? package.json 所在的包的根文件夹?
  • 我需要修改 package.json 吗?

一般来说,为 npm 开发这样的东西的最佳方法是什么?我以前曾研究过包,但它们只是 Javascript。

最佳答案

  • 如果您想单独处理 bt-presence 软件包,您可以将克隆的存储库放在任何地方。如果您想将 bt-presence 的修改版本与应用程序结合使用,我建议的方法是将 bt-presence 注册为应用程序的 package.json 文件中的依赖项,并将版本设置为 bt-presence 存储库的相对路径;然后在应用程序中运行 npm install 将会创建一个从应用程序中的 node_modules/bt-presence 到您的 bt-presence 存储库的符号链接(symbolic link)。
  • npm run build 确实应该从包含 bt-presencepackage.json 的根文件夹运行。
  • 如果您只想更改bt-presence的代码,则无需修改其package.json。仅当您需要更改其中的任何设置(例如,如果您需要向您的 bt-presence 版本添加其他依赖项)时,您才需要修改 package.json

以上内容都不是真正特定于 TypeScript 的。 (如果某些 JavaScript 包需要以某种方式转换或打包 JavaScript 文件,它们也有构建过程。)

关于node.js - 如何修改使用 TypeScript 构建的 npm 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52977116/

相关文章:

javascript - 有没有办法在 Node.js 中强制执行同步函数调用?

mysql - 如何从 kubernetes pod 内的 Nodejs 应用程序访问远程 MySQL 数据库?

javascript - 尝试使用不同的解析器时,cb 不是函数

javascript - 恢复 + typescript :

reactjs - sh : 1: webpack: not found

npm:依赖项与具有捆绑依赖项的 devDependencies

sql - 使用 sequelize.js 按行中正值的数量排序

reactjs - 错误 TS2339 : Property 'for' does not exist on type 'HTMLProps<HTMLLabelElement>'

typescript - 通用类部分初始化器

javascript - 安装 $npm 后,出现错误 : Cannot find module '../lib/utils/unsupported.js'