如何使用angular CLI排除lint目录下的所有文件?

时间:2018-02-20 11:56:27

标签: angular angular-cli lint

我们可以用这种方式排除node_modules。

  "lint": [
        {
          "project": "src/main/webapp/app/file.json",
          "exclude": "**/node_modules/**"
        }
    ]

但如何排除目录下的所有文件?

我尝试了以下方式。它无法正常工作

"exclude": [
 "**/*whatever.pipe.ts", 
 "**/*whatever_else.component.ts"
]

因此,这是目录"src/main/assets/js/ngx-typeahead"

的当前路径

我必须从linting中排除此目录下的所有文件。

我如何实现这一目标?

任何建议都将不胜感激。

2 个答案:

答案 0 :(得分:3)

您可以修改lint内的tsconfig.json行:

"lint": [
    {
        "exclude": [
            "src/main/assets/js/ngx-typeahead/**/*.ts", 
        ]
    }
]

PATH/**/*.ts表示此路径下的所有文件以及内部扩展名为.ts

的子目录

我相信"src/main/assets/js/ngx-typeahead/*会排除此路径下的所有文件

修改 另一种选择是使用tslint.json

{
    "extends": "tslint:recommended",
    ......
    "linterOptions": { 
        "exclude": [
            "src/main/assets/js/ngx-typeahead/**/*.ts", 
        ]
    }
}

更多信息:https://palantir.github.io/tslint/usage/configuration/

编辑2: 我发现this issue link用于angular-cli特定的linting,通过提供你想要lint的确切内容而不是用exlude linting项目!

.angular-cli.json内提供lint选项:

"lint": [{
      "files": "src/**/*.ts",
      "project": "src/tsconfig.app.json"
    },
    {
      "files": "src/**/*.ts",
      "project": "src/tsconfig.spec.json"
    },
    {
      "files": "src/**/*.ts",
      "project": "e2e/tsconfig.e2e.json"
    }
]

答案 1 :(得分:0)

最后这对我有用

"lint": [
    {
      "project": "src/main/webapp/app/tsconfig.app.json",
      "exclude": ["**/node_modules/**", "**/src/main/assets/js/ngx-typeahead**"]
    }