如何在 npm 中发布一个 dist 文件夹

vie*_*bel 10 node.js npm

我有一个 javascript 库,我想在 npm 上发布:我们称之为foo. 问题是客户端要使用的 javascript 文件位于dist文件夹下。因此,目前客户必须dist在他们的import声明中包含如下内容:

import { bar } from 'dist/foo'
Run Code Online (Sandbox Code Playgroud)

我想允许客户在foodist明确提及的情况下导入库,如下所示:

import { bar } from 'foo'
Run Code Online (Sandbox Code Playgroud)

有没有办法在客户package.jsonfoo或在package.json客户中添加属性?

备注:javascript 文件在dist文件夹中的原因是因为我的库是用clojurescript. 因此,源文件srcdist.

Gab*_*leu 8

您可以main在您的package.json:

main:如果你有一个单一的模块作为你程序的入口点(就像“foo”包在 require(“foo”) 给你的一样),那么你需要在“main”字段中指定它。

参考:https : //docs.npmjs.com/misc/developers

但它只适用于单个文件,如果您需要require多个文件,您应该只发布您的dist文件夹:

npm publish dist
Run Code Online (Sandbox Code Playgroud)

  • 这是针对旧版本 NPM 的建议吗?我没有看到此处记录的“dist”选项 - https://docs.npmjs.com/cli/v7/commands/npm-publish 。当我尝试运行它时,我收到一条错误消息,提示“dist”被解释为包名称。“ npm ERR!404 未找到 - PUT https://registry.npmjs.org/dist - 未找到” (4认同)