我有几个软件包,这些软件包的根目录中有一个package.json
文件,而在package.json
文件夹中有一个/src
文件。构建时,将/src
文件复制到/dist
文件夹中。 (后来发布到Nexus)。
我想知道这是否是正确的方法,因为在开发时,我只更改了最外面的/package.json file
。这意味着/ src文件已被“弃用”。并且更新两个文件很麻烦。
我是否以“正确”的方式进行操作,我是否必须使两个文件保持最新状态?或者我可以只使用一个文件,即“根”文件。
package.json
src/
index.ts
package.json
dist/
index.d.ts
index.js
package.json //from src
答案 0 :(得分:0)
设置项目的方式有点不寻常。通常,项目看起来像这样,在根目录下有一个package.json
:
.npmignore
package.json
src/
index.ts
dist/
index.d.ts
index.js
您将从项目的根目录运行dist
,而不是仅发布npm publish
文件夹的内容。新文件.npmignore
告诉npm要发布什么 not 。如果您要排除的唯一内容是src
,则您的.npmignore
将如下所示:
src
然后在package.json
中,设置字段main
和typings
,以告知Node和TS在哪里找到您的代码:
{
"main": "dist/index.js",
"typings": "dist/index.d.ts"
...
}
(或者,如果您确实只想发布dist
的内容,则可以设置另一个构建步骤,将根package.json
复制到{{1} }。但是我上面描述的发布策略更为典型。)