Podążyłem za przykładem podanym na Ionic2 modals i nie otrzymuję żadnych błędów, ale kiedy klikam kartę, która powinna zainicjować modalny nic się nie dzieje.Modem jonowy 2 nie pokazuje
Oto kod na modalnym samego:
@Component ({
template: `
<ion-card class='popover'>
<ion-card-content>
Hello
</ion-card-content>
</ion-card>
`
})
export class AccModal {
dumbData: number;
constructor() {
console.log("constructor");
this.dumbData= 22;
}
}
strona gdzie mój modalne zostaną zaprezentowane wygląda następująco:
<ion-card (click)='presentModal()' class='custom-card'>
<ion-card-header>
Sched. Accuracy
</ion-card-header>
<ion-card-content>
71%
</ion-card-content>
</ion-card>
Z maszynopisu jak ten:
presentModal() {
let myModal = Modal.create(AccModal, {param: "something"});
console.log('myModal is ', myModal);
this.nav.present(myModal);
console.log("function being called");
}
Rejestracja console.log
w presentModal
, ale w konstruktorze modalny NIE jest. Nie mam pojęcia, co robić, bo nie jestem w 100% pewien, co się dzieje?
UPDATE
Kiedy debugowania do nav.present (funkcja Nav Controller) oto co widzę:
if (rootNav['_tabs']) {
// TODO: must have until this goes in
// https://github.com/angular/angular/issues/5481
void 0;
return;
}
Mój projekt ma karty w nim tak, że oświadczenie wartość true a obecna funkcja skutecznie zwraca mi 0 i nazywa to dobrze. W moim package.json moje wersje jonowe to: "ionic-angular": "^2.0.0-beta.8", "ionic-native": "^1.1.0"
Mam nadzieję, że ta dodatkowa informacja pomoże zdiagnozować kogoś mądrzejszego ode mnie.
UPDATE 2:
mam zaktualizowany do najnowszej jonowej 2 w wydaniu 2.0.0-beta.9. Jednak, kiedy debugowania w konsoli chrom wciąż widzę powyższy kod w mojej funkcji nav.present w kodzie jonowych kątowym, choć kiedy patrzę na to w moim własnym kodem widzę to:
if (rootNav['_tabs']) {
// TODO: must have until this goes in
// https://github.com/angular/angular/issues/5481
console.error('A parent <ion-nav> is required for ActionSheet/Alert/Modal/Loading');
return;
}
Oczyściłem pamięć podręczną i mocno wczytałem stronę, a nadal wyświetla się stary kod. Muszę tracić rozum. Wszelkie wgląd w to byłoby niesamowite.
Update 3
Oto kod dla moich zakładkach. Live in the app.html i zmienna index to tylko sposób na uruchomienie aplikacji na prawej karcie. Zaczyna jako 1 (lub druga karta):
<ion-tabs greenTheme [selectedIndex]="index">
<ion-tab tabIcon="people" #content tabTitle="My Roster" [root]="tab2"></ion-tab>
<ion-tab tabIcon="stats" #content tabTitle="Wage Overview" [root]="tab1"></ion-tab>
</ion-tabs>
Czy Twój odtwarzacz to kontroler nawigacyjny? – Drakee510
Tak. Przepraszam, pominąłem konstruktora – discodane
'.present (myModal)' zwraca obietnicę. Spróbuj zrobić '.present (myModal) .then ((res) => {debugger;}). Catch ((err) => {debugger;})' aby sprawdzić, czy są tu zwracane użyteczne informacje –