我正在关注meteor和angular 2的教程,当我到达第11步使用PhoneGap在Android或iOS上运行您的应用时,我无法在我的Android设备上运行。< / p>
这是我从控制台获得的输出。
Error: Uncaught (in promise): Error: Error in ./AppComponent class AppComponent_Host - inline template:0:0 caused by: The selector "app" did not match any elements
这是我到目前为止在app.component.ts文件中的内容:
import { Component } from '@angular/core';
import template from './app.component.html';
@Component({
selector: 'app',
template
})
export class AppComponent {}
该应用程序在Web浏览器上运行良好。我认为这可能是路由器的问题,但我不太确定。
这是来自app.routes.ts的代码
import { Route } from '@angular/router';
import { Meteor } from 'meteor/meteor';
import { PartiesListComponent } from '../parties/parties-list.component';
import { PartyDetailsComponent } from '../parties/party-details.component';
export const routes: Route[] = [
{ path: '', component: PartiesListComponent },
{ path: 'party/:partyId', component: PartyDetailsComponent}
];
这是index.html:
<head>
<base href="/" />
</head>
<body>
<app>Loading...</app>
</body>
这是app.component.html
<div>
<router-outlet></router-outlet>
</div>
它被重定向到PartiesListComponent,但只是抛出该错误并停留在加载上。谢谢。
答案 0 :(得分:2)
已解决
这是main.ts中的原始代码(摘自教程网站)
import 'angular2-meteor-polyfills';
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { AppModule } from './imports/app/app.module';
const platform = platformBrowserDynamic();
platform.bootstrapModule(AppModule);
我发现本教程已经过时(再次),这是一种引导应用程序的新方法。
使用下一个代码,该应用程序在Android上正常工作。
import 'angular2-meteor-polyfills';
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { enableProdMode } from '@angular/core';
import { Meteor } from "meteor/meteor";
import { AppModule } from './imports/app/app.module';
enableProdMode();
Meteor.startup(() => {
platformBrowserDynamic().bootstrapModule(AppModule);
});
我希望这有助于某人。