0
我在JavaScript(ES5)中编写Angular 2应用程序,并且我的生命周期挂钩未被框架调用。Angular 2生命周期挂钩未调用(ES5 javascript)
附件包括:包含ngOnInit,index.html,app组件,app模块,main.js的示例组件。 'all.min.js'是我用uglifyJS生成的所有Angular应用程序js文件的文件。
预期的结果是要调用该组件的ngOnInit并打印控制台消息'ngOnInit'。 Chrome控制台中未显示任何消息。
index.html的(缩短为了简洁):
<!DOCTYPE html>
<html>
<body>
<app>Loading...</app>
<script src="/app/assets/javascript/angular/Rx.js"></script>
<script src="/app/assets/javascript/angular/core.umd.js"></script>
<script src="/app/assets/javascript/angular/common.umd.js"></script>
<script src="/app/assets/javascript/angular/compiler.umd.js"></script>
<script src="/app/assets/javascript/angular/platform-browser.umd.js"></script>
<script src="/app/assets/javascript/angular/platform-browser-dynamic.umd.js"></script>
<script src="/app/assets/javascript/angular/forms.umd.js"></script>
<script src="/app/assets/javascript/angular/shim.min.js"></script>
<script src="/app/assets/javascript/angular/Reflect.js"></script>
<script src="/app/assets/javascript/angular/zone.js"></script>
<script src="/app/assets/javascript/angular/system.js"></script>
<script src='/app/ng_app/all.min.js'></script>
</body>
</html>
app.component.js:
(function(app) {
app.AppComponent =
ng.core.Component({
selector: 'app',
template: '<brief></brief>'
})
.Class({
constructor: function() {
}
});
})(window.app || (window.app = {}));
app.module.js:
(function(app) {
app.AppModule =
ng.core.NgModule({
imports: [ng.platformBrowser.BrowserModule, ng.forms.FormsModule],
declarations: [app.AppComponent,
app.BriefComponent
],
bootstrap: [app.AppComponent]
})
.Class({
constructor: function() {}
});
})(window.app || (window.app = {}));
样品组分(简要组件):
(function(app) {
app.BriefComponent =
ng.core.Component({
selector: 'brief',
templateUrl: 'ng_app/brief/brief.component.html'
]
})
.Class({
constructor: function() {
},
ngOnInit: function() {
console.log('ngOnInit brief');
}
});
})(window.app || (window.app = {}));
个
main.js:
(function(app) {
document.addEventListener('DOMContentLoaded', function() {
ng.platformBrowserDynamic
.platformBrowserDynamic()
.bootstrapModule(app.AppModule);
});
})(window.app || (window.app = {}));