自版本5的测试版之一以来,Angular有一个新的编译器选项preserveWhitespaces
。该文档中的CompilerOptions
type alias中提到了该属性。 Component
装饰器的文档描述its usage,并提到版本5中的默认值为true
(无空格删除)。
我见过the PR,但从我从某些测试中可以看出,使用它的唯一方法是为每个preserveWhitespace
元数据提供@Component
。如何将所有组件全局设置为false
,然后仅将某些组件设置为true
?
答案 0 :(得分:68)
默认情况下,从angular 6
开始,这将是false目前,在JIT模式下,我们可以将其设置为CompileOptions的一部分:
<强> main.ts 强>
var w = mydiv.offsetWidth;
我们必须将此选项添加到
<强> tsconfig.app.json 强>
platformBrowserDynamic().bootstrapModule(AppModule, { preserveWhitespaces: false });
Angular-cli@1.4.5 example 您可以在其中找到相应的commit
angular-cli repo中也有feature request。
答案 1 :(得分:0)
要在AOT编译(ng serve --aot,ng build --prod)中设置角度编译器选项,必须将tsconfig.app.json更改为包含以下内容:
"angularCompilerOptions": {
"preserveWhitespaces": true
},
为了在JIT编译(ngserve)中设置有角度的编译器选项,您必须更改main.ts,特别是bootstrapModule调用:
platformBrowserDynamic().bootstrapModule(AppModule, {
preserveWhitespaces: true
})
.catch(err => console.log(err));