我使用简单的javascript构建了一个带有角度2的网站,以及它在浏览器中正常运行的所有内容,但是当我尝试构建phonegapp应用程序或将其与Phonegap Mobile应用程序一起使用时,它无法正常工作。
在index.html中我有:
<body>
<app>Loading app...</app>
<!-- 1. Load libraries -->
<script src="libs/angular/2.0.0-beta.3/angular2-polyfills.js"></script>
<script src="libs/angular/2.0.0-beta.3/Rx.umd.js"></script>
<script src="libs/angular/2.0.0-beta.3/angular2-all.umd.js"></script>
<!-- 2. Load our 'modules' -->
<script src='app/services.build.js'></script> <!-- All our services, as server comunication -->
<script src='app/components.build.js'></script> <!-- All the components -->
<script src='app/app.component.js'></script> <!-- App component, main one -->
<script src='app/main.js'></script> <!-- Main -->
<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript">
phonegapApp.initialize();
</script>
</body>
在main.js上我有:
var phonegapApp = {
initialize: function() {
this.bindEvents();
},
bindEvents: function() {
document.addEventListener('deviceready', this.onDeviceReady, false);
},
onDeviceReady: function() {
ng.platform.browser.bootstrap(AppComponent,[
ng.router.ROUTER_PROVIDERS,
new ng.core.Provider(ng.router.LocationStrategy, {useClass: ng.router.HashLocationStrategy})
]);
}
};
所以当设备准备就绪时我会加入ng.platform.browser.bootstrap
。 (也尝试使用document.addEventListener('DOMContentLoaded', function() {...}
但结果相同。
我所能看到的只是加载......所以<app>Loading...</app>
它不会被角度解释。
你知道我应该改变什么工作吗?感谢。
答案 0 :(得分:4)
您需要添加shims
才能使其在phonegap
上运行。这可以是es6-shim.js
/ es5-shim.js
可能会解决您的问题。