出于安全原因,我需要设置一个自定义的 npm-registry。
我使用以下命令配置本地 http 注册表 (nginx):
npm config set @example:registry=http://localhost/
然后我将两个文件放置到nginx
.
..
@example%2fmodel
model.tgz
@example%2fmodel
的内容是:
{
"name":"Model",
"dist-tags":{"foo":"1.0.0"},
"versions":{
"1.0.0":{
"version":"1.0.0",
"dist":{"tarball":"model.tgz"}
}
}
}
model.tgz
的内容是package.json
和Model.ts
。
Model.ts
(来自 tarball)是:
export const URL = 'https://example.com/';
export const USER = 'apiv2';
export const PASS = '***';
package.json
(来自 tarball)是:
{"name":"Model","version":"1.0.0","files":"*.ts"}
如您所见,它非常简单且简单。
然后我做:
npm install @example/model
added 1 package in 0.347s
npm info ok
效果很好。但我的
Model.ts
不见了
可选的
files
属性字段是文件模式数组。
因此,根据上述内容,您的 package.json
应如下所示:
{
"name":"Model",
"version":"1.0.0",
"files":["*.ts"]
}
方数组括号
[]
确保其中声明的任何文件类型在打包时都将包含在 tarball 中。
请参阅此处的文档:配置 NPM:package.json - 文件属性