2017-02-05 36 views
7

我知道這是一種好的做法,但我對:角2+ CLI(打字稿) - 如何停止生成.spec.ts測試文件

我使用角CLI特別ng g到生成我所有的類,但是,我對任何測試文件*.spec.ts都不感興趣,並且我知道有兩個標記(--inline-template,--inline-style)可以處理內聯CSS和HTML,而不是分隔文件。 和規範的默認標誌被設置爲true --spec

所以每次運行,是的,我可以這樣做ng g c foo --it --is --spec=false

但如何禁用的全球測試文件的創建?有沒有它的默認設置?

貿然,我做了一些這樣的東西(沒有工作)

ng set spec=false --global

然後試圖配置TS設置通過填充排除陣列文件src/tsconfig.json

"exclude": [ 
    "**/*.spec.ts" 
] 

回答

12

您可以運行此命令禁用特定類型的文件規範文件生成:

ng set defaults.spec.FILETYPE false

例如:

ng set defaults.spec.component false // Won't generate spec files for .component files

或者你可以禁用所有來自angular-cli.json文件的spec文件生成。

{ 
    ... 
    "defaults": { 
    "spec": { 
     "class": false, 
     "component": false, 
     "directive": false, 
     "module": false, 
     "pipe": false, 
     "service": false 
    } 
    } 
} 
7

只是爲了更新Sabbir Rahman's answer

在CLI的版本1.0.2,你將不得不spec文件設置爲爲每個單獨的類型。一個例子如下:

"defaults": { 
    "styleExt": "scss", 
    "component": { 
     "spec": false 
    }, 
    "service": { 
     "spec": false 
    }, 
    "directive": { 
     "spec": false 
    }, 
    "class": { 
     "spec": false // Set to false by default 
    }, 
    "module": { 
     "spec": false // Set to false by default 
    }, 
    "pipe": { 
     "spec": false 
    } 
    } 
+0

JSON文件沒有評論;) – Johansrk