2017-05-24 64 views
3

是否有任何配置設置可以刪除這些空白的評論和空白?Angular應用程序中的空評論

enter image description here

我生成命令是ng build --environment prod --progress false --target production和tsconfig是:

{ 
    "compileOnSave": false, 
    "compilerOptions": { 
     "alwaysStrict": true, 
     "baseUrl": "/", 
     "emitDecoratorMetadata": true, 
     "experimentalDecorators": true, 
     "forceConsistentCasingInFileNames": true, 
     "lib": [ "es2015", "dom" ], 
     "module": "es2015", 
     "moduleResolution": "node", 
     "newLine": "CRLF", 
     "noFallthroughCasesInSwitch": true, 
     "noImplicitAny": true, 
     "noImplicitReturns": true, 
     "noUnusedLocals": true, 
     "noUnusedParameters": false, 
     "outDir": "./dist/out-tsc", 
     "removeComments": true, 
     "skipDefaultLibCheck": true, 
     "skipLibCheck": true, 
     "strictNullChecks": true, 
     "target": "es5", 
     "typeRoots": [ "./node_modules/@types" ] 
    } 
} 

@角/ CLI:1.0.4
節點:7.2.1
OS:win32的64
@angular/common:4.1.3

謝謝。

回答

1

你根本做不到!

Angular需要這些註釋來跟蹤很多事情,比如在哪裏呈現*ngIf內容 ,所以長時間的短消息評論需要在您的HTML或Angular中無法正常工作。

+0

這些註釋僅在Chrome開發人員工具中顯示爲空嗎?否則,我不明白如何可以幫助角。我有一個想法,tsconfig選項「removeComments」不應該與一個角度的應用程序一起使用,但應用程序奇怪地按預期工作。 – Zygimantas

1

這是根據您的Angular指令,標籤,條件(如果...)生成的,因此需要空格。如果你刪除它,那麼它將表現不好,所有雙向綁定將消失。那些空間確定你的角度DOM將如何呈現並綁定到模型和變量。此外,註釋會跟蹤新DOM元素將呈現的位置(如果條件和其他)。

請參閱此鏈接瞭解更多信息:https://github.com/angular/angular.js/issues/8722

1

這些評論的每一個是角度使用,以保持對現場可能呈現視圖的表達ViewContainerRef

當你有一個ngIf,如果表達式被評估爲false,顯然Angular不會呈現該元素,但只要它變爲true,它就會呈現該元素,那麼它如何知道它放在哪裏呢?

<div *ngIf="expression"></div> 

當然其他表達式求值和視圖模板的綁定是有的,但ngIf是一個最容易理解

這就是這些意見來自何方。

相關問題