如何禁用 TSLint 警告 - 深度导入
Posted
技术标签:
【中文标题】如何禁用 TSLint 警告 - 深度导入【英文标题】:How to disable TSLint Warning - deep imports 【发布时间】: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,因此更改该配置对您没有帮助。 【参考方案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
【讨论】:
以上是关于如何禁用 TSLint 警告 - 深度导入的主要内容,如果未能解决你的问题,请参考以下文章