【发布时间】:2019-07-18 10:15:57
【问题描述】:
目前正在学习闭包,并注意到 Angular 组件 Typescript 类被编译为闭包函数。在 Javascript 类上使用闭包有什么特别的原因吗?例如从一个全新的项目编译 AppComponent.ts。
var AppComponent = /** @class */ (function () {
function AppComponent() {
this.title = 'My App';
}
AppComponent.prototype.ngOnInit = function () {
};
AppComponent = tslib__WEBPACK_IMPORTED_MODULE_0__["__decorate"]([
Object(_angular_core__WEBPACK_IMPORTED_MODULE_1__["Component"])({
selector: 'app-root',
template: __webpack_require__(/*! ./app.component.html */ "./src/app/app.component.html"),
styles: [__webpack_require__(/*! ./app.component.scss */ "./src/app/app.component.scss")]
}),
tslib__WEBPACK_IMPORTED_MODULE_0__["__metadata"]("design:paramtypes", [])
], AppComponent);
return AppComponent;
}());
我意识到闭包有多种用途,封装就是其中之一,所以当你想要实现的是一个类时,为什么不使用类呢。
谢谢。
【问题讨论】:
-
因为它被配置为编译/转换为早期版本的 JS。 IE 不支持 ES6。
标签: javascript angular