【问题标题】:Angualar 10 : Add descritpion (*d.ts) file manually to compilationAngular 10:手动将描述(*d.ts)文件添加到编译中
【发布时间】:2021-05-02 19:54:35
【问题描述】:

我有一个 Angular 库,其中包含描述文件 *.d.ts。在下面的结构中

├ src
│  ├ my-lib
│  │   ├ my-typedef.d.ts
│  │      
│  │
│  └public_apit.ts
│  
└ tsconfig.lib.json

在 tsconfig.lib.json 上,我将其包含如下:

"include": [
    "src/lib/typedefs"
  ],

编辑

在升级到 10 之前,它被设置为 angular 8。这些文件是在最终构建包中编译的,但是在 Angular 10 之后。我遇到了这个问题。虽然还有其他文件夹,但 typedefs。

我在角度升级指南中看到我们需要手动添加,但不确定正确的方法是什么。

我们更新了 tsconfig.app.json 以限制编译的文件。如果 您依赖于编译中包含的其他文件,例如 typings.d.ts 文件,需要手动添加到编译中。

https://update.angular.io/?l=3&v=8.0-9.0

回购问题:https://github.com/amirgc/angular10-ng-build.git

  • 下载存储库。
  • npm 安装
  • ng 构建

【问题讨论】:

  • 将 .d.ts 路径添加到 tsconfig types 或它们的包含文件夹到 typeRoots 帮助?
  • @RazRonen,这也不起作用
  • 包含中的src/lib/typedefs/*.d.ts 怎么样?
  • @RazRonen ,不,这也没有帮助
  • @Amir 你能修复你链接的存储库的链接吗?

标签: angular typescript angular-cli angular9 angular-cli-v9


【解决方案1】:

我发现这是预期的行为,因为 ng-packagr 的升级不会发出类型定义。如果我们想发出类型描述。要发出 .d.ts,我们可以使用 assets 选项,或者将文件更改为 .ts 扩展名。 我们可以在 ng-package.json 文件中添加以下部分。

{
  "ngPackage": {
    "assets": [
      "CHANGELOG.md",
      "./typedefs/**/*.d.ts"
    ],
    "lib": {
      ...
    }
  }
}

【讨论】:

    猜你喜欢
    • 2021-10-19
    • 1970-01-01
    • 1970-01-01
    • 2020-04-19
    • 2017-01-31
    • 2023-03-27
    • 1970-01-01
    • 1970-01-01
    • 2016-01-14
    相关资源
    最近更新 更多