2016-06-17 10 views
2

У меня проблема с приложением Angular2, когда я его создаю для Android (возможно, эта проблема также возникает и в iOS, но я еще не тестировал ее). При запуске появляется следующее сообщение об ошибке:Angular2 + Cordova - Невозможно сопоставить маршруты при запуске

EXCEPTION: Error: Uncaught (in promise): Cannot match any routes. Current segment: 'android_asset'. Available routes: ['', '/login', '/register', '/lostpw', '/resetpw', '/content']. 

Из-за этого стартовая страница приложения не загружается. Для того, чтобы сделать приложение работает на все, что я должен был заменить базовый тег в index.html из

<base href="/"> 

в

<base href="file:///android_asset/www/" target="_blank"> 

Но, как сказал, теперь маршрутизатор пытается разрешить android_asset. С в приложении я могу нажать на меню-записи, как

<a [routerLink]="['/']">Home</a> 

и я успешно перенаправлен на главном маршрут.

Кто-нибудь знает, как решить проблему при запуске?

Версия: 2.0.0 Угловое-RC.1

+0

Вы могли решить эту проблему? –

+0

@ ZeeshanJan да установка href базового тега на "." решил проблему – crebuh

+0

Если я поместил базовый тег как: '' или '' все равно я столкнулся с той же проблемой. есть ли у вас предложения? –

ответ

2

Для '' redirct домой

export const StartRoutes: RouterConfig = [ { path: '', redirectTo: '/home' } ];

+0

Я применил это к app.component.ts, но все равно получаю ту же ошибку. –

+0

это настройка конфигурации Router (маршруты), проверьте эту ссылку http://vsavkin.tumblr.com/post/146722301646/angular-router-empty-paths-componentless-routes, чтобы получить привязку кода – kTn

0

Для меня разрешение было использовать './' для базового HREF. Это разрешило эту проблему и ряд других вопросов.

Смежные вопросы