Aufgrund einiger Leistungsprobleme versuche ich eine angularJS2/Phonegap-App zu aktualisieren, um WKWebView auf iOS zu verwenden.Angular 2.0 Router-Navigation funktioniert nicht auf iOS WKWebView
Leider funktionieren alle Anrufe zum Routen navigieren nicht. Dazu gehören routerlink
und this.route.navigate
Anrufe. Es werden keine Fehler ausgelöst. Hat jemand anderes dies gesehen und/oder vielleicht einen Workaround?
Der Code funktioniert gut mit dem normalen UIWebView.
Ich bin ein relativer Neuling zu Angular, so dass alle Vorschläge willkommen sind.
Hier ist, was einige der entsprechenden Code wie folgt aussieht:
import { Component } from "@angular/core";
import { Routes, Router, ActivatedRoute } from "@angular/router";
import { LoggedInCallback } from "./service/cognito.service";
export class HomeComponent implements LoggedInCallback {
constructor(public router:Router){
}
isLoggedIn(message:string, isLoggedIn:boolean) {
if (isLoggedIn){
this.router.navigate(['/home/cl']);
}
else {
console.log('HomeComponent: '+message);
}
}
Routing-Modul:
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';
import { Routes, RouterModule } from '@angular/router';
import { CategoryListComponent } from './categorylist/categorylist.component';
const approutes: Routes = [
{
path: 'home/cl',
component: CategoryListComponent
},
...
];
@NgModule({
declarations: [
],
imports: [RouterModule.forRoot(approutes),
BrowserModule,
FormsModule],
exports: [RouterModule]
})
export class AppRoutingModule { }
Als Reaktion auf einen Kommentar unten:
Wie bereits erwähnt, ist dies eine phonegap App, so verwenden die meisten Referenzen (ich nehme an) die Datei: Protokoll. Die erste Seite wird jedoch ordnungsgemäß geladen und verweist auf den Inhalt einer einzelnen JavaScript-Datei. Die seltsame Sache ist, dass alle anderen Router-referenzierten Inhalte auch in der gleichen JavaScript-Datei sind.
Ich hatte gehofft, dass jemand die Schrauben und Muttern des Routerverhaltens verstehen würde, um zu erklären, warum es in dieser Umgebung nicht funktioniert.
Bitte zeigen Sie mir Sie Code. –
Wenn Sie untergeordnete Routen verwenden, müssen Sie RouterModule importieren. und fügen Sie bitte Code hinzu, damit wir Ihnen helfen können. –
Ich habe etwas Code hinzugefügt, aber der Punkt ist, dass es in UIWebView gut funktioniert, aber in WKWebView fehlschlägt. –