How to ignore/exclude some files/directory from li

2019-03-17 13:22发布

问题:

Similar to this question

I am running the following command to linting my angular2 typeScript code.

ng lint

It is proving all the linting error nicely.

But I want my vendor folder (let say "src/app/quote/services/generated/**/*") should not get included at the time of lining.

I know this can be done with tslint command as follows (Reference Here)

tslint \"src/**/*.ts\" -e \"**/__test__/**\"

But in angular cli what will be the parameter? How to exclude some files from tslint?

Note: My Angular Cli version is : @angular/cli: 1.0.0-rc.0

回答1:

From Angular6+, .angular-cli.json has been replaced by angular.json, but you can still add the exclude path in its lint part.

"lint": {
      "builder": "@angular-devkit/build-angular:tslint",
      "options": {
        "tsConfig": [
          "src/tsconfig.app.json",
          "src/tsconfig.spec.json"
        ],
        "exclude": [
          "**/node_modules/**"      // excluded directories
        ]
      }
    }

According to the angular-cli issue#5063, you can add the exclude path in .angular-cli.json like this:

"lint": [
{
  "project": "src/tsconfig.app.json",
  "exclude": "**/node_modules/**/*"   // the node_modules for example
}]


回答2:

Figured out it HAS to be a blob pattern..

If you want multiple files/directories just use an array in your .angular-cli.json

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


回答3:

Your angular-cli.json file would be like this-

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

You need to remove the lint path for "src/tsconfig.spec.json". So either remove the second object or comment it. Your updated lint array should be like this-

"lint": [
    {
      "project": "src/tsconfig.app.json",
      "exclude": "**/node_modules/**"
    },
    {
      "project": "e2e/tsconfig.e2e.json",
      "exclude": "**/node_modules/**"
    }
  ]