博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ng2路由延时加载模块
阅读量:5771 次
发布时间:2019-06-18

本文共 2335 字,大约阅读时间需要 7 分钟。

1、 app.module.ts

import {BrowserModule} from '@angular/platform-browser';import {NgModule} from '@angular/core';import {FormsModule} from '@angular/forms';import {HttpModule} from '@angular/http';import {RouterModule, Routes} from "@angular/router";import {AppComponent} from './components/app.component';import {HomeComponent} from "./components/home.component";import {ContactComponent} from "./components/contact.component";// 这样就实现了延时加载// 我们使用属性loadChildren而不是component 。// 我们传递一个字符串而不是一个符号,以避免加载模块。// 我们不仅定义了模块的路径,还定义了类的名称。const MyRouter:Routes = [  {    path: "home",    component: HomeComponent  },  {    path: "about",    loadChildren: "app/about.module#AboutModule"  },  {    path: "contact",    component: ContactComponent  },  {    path: "**",    redirectTo: "home"  }];@NgModule({  declarations: [    AppComponent,    HomeComponent,    ContactComponent  ],  imports: [    BrowserModule,    FormsModule,    HttpModule,    RouterModule.forRoot(MyRouter)  ],  providers: [],  bootstrap: [AppComponent]})export class AppModule {}

2、app.component.ts

import { Component } from '@angular/core';@Component({  selector: 'app-root',  templateUrl: '../templates/app.component.html'})export class AppComponent {  }

3、app.component.html

首页联系我们关于我们我们列表

4、home.component.ts

import {Component} from "@angular/core";@Component({  selector: "my-home",  template: "首页"})export class HomeComponent {  constructor() {    console.log("home");  }}

5、about.module.ts

import {NgModule} from '@angular/core';import {RouterModule, Routes} from "@angular/router";import {AboutComponent} from "./components/about.component";import {ListComponent} from "./components/list.component";const childRouter:Routes = [  {    path: '',    component: AboutComponent  },  {    path: "list",    component: ListComponent  }];@NgModule({  imports: [    RouterModule.forChild(childRouter)  ],  declarations: [    AboutComponent,    ListComponent  ]})export class AboutModule {}

6、about.component.ts

import {Component, OnInit} from "@angular/core";@Component({  selector: "my-about",  template: "关于我们"})export class AboutComponent {  constructor() {    console.log("about");  }}

7、list.component.ts

import {Component} from "@angular/core";@Component({  selector: "my-list",  template: "列表"})export class ListComponent {  constructor() {    console.log("list");  }}

转载地址:http://rzoux.baihongyu.com/

你可能感兴趣的文章
手把手教你如何提高神经网络的性能
查看>>
前端布局原理涉及到的相关概念总结
查看>>
递归调用 VS 循环调用
查看>>
树莓派下实现ngrok自启动
查看>>
javascript静态类型检测工具—Flow
查看>>
MachineLearning-Sklearn——环境搭建
查看>>
node学习之路(二)—— Node.js 连接 MongoDB
查看>>
《深入理解java虚拟机》学习笔记系列——垃圾收集器&内存分配策略
查看>>
通过XAML Islands使Windows桌面应用程序现代化
查看>>
Javascript 深入浅出原型
查看>>
简单之极,搭建属于自己的Data Mining环境(Spark版本)
查看>>
Ruby 2.5.0概览
查看>>
如何通过解决精益问题提高敏捷团队生产力
查看>>
Apache下.htaccess文件配置及功能介绍
查看>>
Magento XML cheatsheet
查看>>
Egg 2.19.0 发布,阿里开源的企业级 Node.js 框架
查看>>
Kubernetes 弹性伸缩全场景解析 (四)- 让核心组件充满弹性 ...
查看>>
Swoole 4.1.0 正式版发布,支持原生 Redis/PDO/MySQLi 协程化 ...
查看>>
haproxy mysql实例配置
查看>>
MySQL 8.0 压缩包版安装方法
查看>>