【问题标题】:How to disable TSLint Warning - deep imports如何禁用 TSLint 警告 - 深度导入
【发布时间】:2020-08-06 08:41:40
【问题描述】:

我在编译 Angular 通用应用程序时收到此警告

警告:入口点“我的模块”包含深度导入 '/src/app/mocks/myModule.ts'。这可能不是问题,但可能 导致入口点的编译无序。

我在 tsconfig 中有一个路径更改,它有效并且是我想要的功能。我希望能够禁用这个特定的警告。我认为我可以对 tslint.json 进行一些更改,以允许一起进行深度导入,或者在这种特殊情况下允许它。

ESlint 似乎有 nx-enforce-module-boundaries,但我认为这不适用于我,因为这个项目使用 TSLint。但是,我还是尝试了,但没有成功:

{
  "extends": "tslint:recommended",
  "rules": {
    "nx-enforce-module-boundaries": [
      true,
      {
        "allow": [
          ["/src/app/mocks/myModule.ts"]
        ]
      }
    ],
    ...

我在TSLint Rules 中找不到任何似乎对我有帮助的东西。有什么想法吗?

【问题讨论】:

  • 这与 Nx 无关,因为此警告来自 Angular CLI(可能还有 webpack)。它也不是来自 TSLint,因此更改该配置对您没有帮助。

标签: typescript import compiler-errors angular-cli tslint


【解决方案1】:

我最终只使用了自定义 webpack,因为我不知道如何禁用警告。 Webpack 没有深度导入警告:

module.exports = {
    plugins: [
        new webpack.NormalModuleReplacementPlugin(/^myModule$/, path.join(__dirname, './src/app/mocks/myModule.mock.server.ts')),
    ]
}

https://github.com/just-jeb/angular-builders/tree/master/packages/custom-webpack

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-04-17
    • 2018-08-02
    • 2017-08-24
    • 2021-05-20
    • 2017-04-08
    • 2017-12-04
    • 2013-01-05
    • 2012-08-03
    相关资源
    最近更新 更多