我正在查看the documentation for ng-bootstrap
并注意到one of their examples在对象 - 文字定义中省略了逗号。 (我无法直接链接到Plunker中的文件,但它是src/app.ts
的第30行。)
@NgModule({
imports: [BrowserModule, FormsModule, ReactiveFormsModule, JsonpModule, NgbModule.forRoot()],
declarations: [App, NgbdDropdownManual]
bootstrap: [App]
})
export class AppModule {}
这导致我玩Plunker,结果你可以删除对象声明中的所有逗号,代码仍然编译并运行 - 尝试添加console.log({a:1 b:2})
以查看我的意思。 / p>
这在所有TypeScript中是否得到正式支持,还是在这个特定示例中编译和运行代码的方式的工件?
答案 0 :(得分:3)
这很可能是因为当转换tsc时会插入缺少的标点符号。
例如
let x = {
a: 2 b: 4
}
编译为:
var x = {
a: 2, b: 4
};
同时发出编辑警告,告诉您,是预期的。
虽然这似乎有效,但我不会依赖它,因为它似乎只是意外后果。
您可以在游乐场here中看到此示例。