Skip to content

Commit 8f470f9

Browse files
vchimevADjenkov
authored and
ADjenkov
committed
test(ng-sample): add modal page router outlet example
1 parent fc15cbd commit 8f470f9

File tree

3 files changed

+53
-5
lines changed

3 files changed

+53
-5
lines changed

Diff for: ng-sample/app/app.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ import { LivesyncApp } from "./examples/livesync-test/livesync-test-app";
5252
import { ModalTest } from "./examples/modal/modal-test";
5353
import { ModalNestedTest } from "./examples/modal/modal-nested-test";
5454
import { ModalRouterOutletTest } from "./examples/modal/modal-router-outlet-test";
55+
import { ModalPageRouterOutletTest } from "./examples/modal/modal-page-router-outlet-test";
5556

5657
// new router
5758
import { RouterOutletAppComponent } from "./examples/router/router-outlet-test";
@@ -192,4 +193,5 @@ onAfterLivesync.subscribe(({ moduleRef, error }) => {
192193
// console.log("APP RESTART!!!! !!!");
193194
// platformNativeScriptDynamic().bootstrapModule(makeExampleModule(ModalTest));
194195
// platformNativeScriptDynamic().bootstrapModule(makeExampleModule(ModalNestedTest));
195-
platformNativeScriptDynamic().bootstrapModule(makeExampleModule(ModalRouterOutletTest));
196+
// platformNativeScriptDynamic().bootstrapModule(makeExampleModule(ModalRouterOutletTest));
197+
platformNativeScriptDynamic().bootstrapModule(makeExampleModule(ModalPageRouterOutletTest));
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
import { Component, ViewContainerRef } from "@angular/core";
2+
import * as dialogs from "ui/dialogs";
3+
import { ModalDialogService, ModalDialogOptions } from "nativescript-angular/directives/dialogs";
4+
import { FirstComponent, SecondComponent, ThirdComponent, PageRouterOutletAppComponent } from "../router/page-router-outlet-test";
5+
6+
@Component({
7+
selector: "modal-router-outlet-test",
8+
template: `
9+
<GridLayout rows="*, auto">
10+
<StackLayout verticalAlignment="top" margin="12">
11+
<Button text="show component" (tap)="showModal(false)"></Button>
12+
<Button text="show component fullscreen" (tap)="showModal(true)"></Button>
13+
</StackLayout>
14+
<Label [text]="'RESULT: ' + result" row="1" margin="12"></Label>
15+
</GridLayout>
16+
`
17+
})
18+
export class ModalPageRouterOutletTest {
19+
20+
public result: string = "result";
21+
22+
constructor(private modal: ModalDialogService, private vcRef: ViewContainerRef) { }
23+
24+
static entries = [
25+
PageRouterOutletAppComponent,
26+
];
27+
28+
static exports = [
29+
FirstComponent,
30+
SecondComponent,
31+
ThirdComponent
32+
];
33+
34+
static routes = PageRouterOutletAppComponent.routes;
35+
36+
public showModal(fullscreen: boolean) {
37+
const options: ModalDialogOptions = {
38+
fullscreen: fullscreen,
39+
viewContainerRef: this.vcRef
40+
};
41+
42+
this.modal.showModal(PageRouterOutletAppComponent, options).then((res: string) => {
43+
this.result = res || "empty result";
44+
});
45+
}
46+
47+
}

Diff for: ng-sample/app/examples/router/page-router-outlet-test.ts

+3-4
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import { Page } from "ui/page";
55
import { Observable } from "rxjs/Observable";
66
import "rxjs/add/operator/map";
77

8-
98
@Component({
109
selector: "first",
1110
styleUrls: ["examples/router/styles.css"],
@@ -19,7 +18,7 @@ import "rxjs/add/operator/map";
1918
<Button text="Third(2)" [nsRouterLink]="['/third', '2' ]"></Button>
2019
</StackLayout>`
2120
})
22-
class FirstComponent implements OnInit, OnDestroy {
21+
export class FirstComponent implements OnInit, OnDestroy {
2322
constructor(page: Page) {
2423
console.log("FirstComponent.constructor() page: " + page);
2524
}
@@ -47,7 +46,7 @@ class FirstComponent implements OnInit, OnDestroy {
4746
<Button text="Third(2)" [nsRouterLink]="['/third', '2' ]"></Button>
4847
</StackLayout>`
4948
})
50-
class SecondComponent implements OnInit, OnDestroy {
49+
export class SecondComponent implements OnInit, OnDestroy {
5150
public id: Observable<string>;
5251
constructor(private location: Location, route: ActivatedRoute, page: Page) {
5352
console.log("SecondComponent.constructor() page: " + page);
@@ -81,7 +80,7 @@ class SecondComponent implements OnInit, OnDestroy {
8180
<Button text="Second(2)" [nsRouterLink]="['/second', '2' ]"></Button>
8281
</StackLayout>`
8382
})
84-
class ThirdComponent implements OnInit, OnDestroy {
83+
export class ThirdComponent implements OnInit, OnDestroy {
8584
public id: Observable<string>;
8685
constructor(private location: Location, route: ActivatedRoute, page: Page) {
8786
console.log("ThirdComponent.constructor() page: " + page);

0 commit comments

Comments
 (0)