官术网_书友最值得收藏!

Laying out the UI

We will use angular-material to style the app, as it is quick and reliable. To install angular-material, run the following command:

npm install --save @angular/material @angular/animations @angular/cdk

Once angular-material is saved into the application, we can use the Button component provided to create the UI necessary, which will be fairly straightforward. First, import the MatButtonModule that we want to use for this view and then inject the module as the dependency in your main AppModule.

The final form of app.module.ts would be as follows:

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { MatButtonModule } from '@angular/material';

import { AppComponent } from './app.component';
import { RouterModule } from "@angular/router";
import { routes, navigatableComponents } from "./app.routing";
import { Stack } from "./utils/stack";

// main angular module
@NgModule({
declarations: [
AppComponent,

// our components are imported here in the main module
...navigatableComponents
],
imports: [
BrowserModule,
FormsModule,
HttpModule,

// our routes are used here
RouterModule.forRoot(routes),
BrowserAnimationsModule,

// material module
MatButtonModule
],
providers: [
Stack
],
bootstrap: [AppComponent]
})
export class AppModule { }

We will place four buttons at the top to switch between the four states that we have created and then display these states in the router-outlet directive provided by Angular followed by the back button. After all this is done, we will get the following result:

<nav>
<button mat-button
routerLink="/about"
routerLinkActive="active">
About
</button>
<button mat-button
routerLink="/dashboard"
routerLinkActive="active">
Dashboard
</button>
<button mat-button
routerLink="/home"
routerLinkActive="active">
Home
</button>
<button mat-button
routerLink="/profile"
routerLinkActive="active">
Profile
</button>
</nav>

<router-outlet></router-outlet>

<footer>
<button mat-fab (click)="goBack()" >Back</button>
</footer>
主站蜘蛛池模板: 航空| 迁西县| 永和县| 栾城县| 资阳市| 乡城县| 遵义县| 南澳县| 保靖县| 长丰县| 霍林郭勒市| 来宾市| 牡丹江市| 江阴市| 水富县| 祁门县| 东兴市| 建平县| 白朗县| 龙川县| 思茅市| 昭通市| 穆棱市| 开封市| 积石山| 界首市| 长沙县| 南雄市| 会理县| 崇明县| 隆回县| 富平县| 万盛区| 南乐县| 桂阳县| 安陆市| 额敏县| 久治县| 博客| 高雄县| 陕西省|