首页 文章

.npmignore在发布时不忽略index.ts文件

提问于
浏览
0

我正在创建一个我发布到npm的Angular2组件库 . 我在整个源代码中使用index.ts作为我的桶文件 . 我在.npmignore文件中包含* .ts,但是,index.ts包含在发布到npm的代码中 . 当我在消费的Angular2项目中安装组件时,index.ts包含在node_modules文件夹中安装的代码中 . 在整个npm安装库中使用index.ts会阻止构建主应用程序,因为index.ts不在根文件夹中 . 令人惊讶的是,我在npm安装中排除了所有其他.ts文件 .

这是我的.npmignore文件:

node_modules
npm-debug.log
Thumbs.db
.DS_Store
.idea
.vscode
*.ts
**/*.ts
**/index.ts
!*.d.ts
.gitignore
.npmignore
license-banner.txt
tsconfig.json
tsconfig.publish.json

除了index.ts之外,Everthing被忽略了 .

我必须手动进入并删除每个index.ts文件,然后一切按预期工作 .

我错过了什么导致index.ts被包括在内?

I'm using npm version 3.9.6.

谢谢你的帮助 .

1 回答

  • 0

    经过大量的研究和反复试验,我发现我需要添加一个输出目录,用于将我的TS代码编译成JS和打字稿类型信息(.d.ts)文件 . 一旦生成的代码在一个单独的文件夹中(在本例中为/ lib),我的实现就改为从我的lib文件夹导入 . 我的所有.ts文件都保留在src文件夹中 .

    我安装库的项目现在正在按预期编译 . 底线是确保生成的代码(JS和.d.ts文件)与源代码位于不同的文件夹中 . 现在似乎很明显 .

相关问题