angular惰性加载实现2020

1.命令:ng generate module customers --routing

这会创建一个 customers 目录,其中有两个文件:CustomersModule 和 CustomersRoutingModule。 CustomersModule 扮演的是与客户紧密相关的所有事物的管理员。CustomersRoutingModule 则会处理任何与客户有关的路由。

CLI 会把 CustomersRoutingModule 自动导入到 CustomersModule。它会在文件的顶部添加一条 JavaScript 的 import 语句,并把 CustomersRoutingModule 添加到 @NgModule 的 imports 数组中。

2.命令:ng generate component customers/customer-list

这会在 customers 目录中创建一个名叫 customer-list 的文件夹,其中包含该组件的四个文件。

就像路由模块一样,CLI 也自动把 CustomerListComponent 导入了 CustomersModule。

3. src/app/app-routing.module.ts

const routes: Routes = [

{

path: ‘customers‘,

loadChildren: () => import(‘./customers/customers.module‘).then(mod => mod.CustomersModule)

},

{

path: ‘orders‘,

loadChildren: () => import(‘./orders/orders.module‘).then(mod => mod.OrdersModule)

},

{

path: ‘‘,

redirectTo: ‘‘,

pathMatch: ‘full‘

}

];

注意看惰性加载的语法:loadChildren 后面紧跟着一个函数,它使用浏览器内置的 import(‘...‘) 语法来实现动态导入。这里的导入路径是到那个模块的相对路径。

4.初始化效果:

地址栏:localhost:4200

5.点击customers按钮效果如下图,地址栏:localhost:4200/customers,查看浏览器Network,可看到customer-module模块被惰性加载了。

6.orders模块惰性加载同5.

原文地址:https://www.cnblogs.com/begin256/p/12210585.html

时间: 2024-10-30 06:40:37

angular惰性加载实现2020的相关文章

PDF在线阅读 FlexPaper 惰性加载 ;

关于PDF在线阅读问题,比较普遍的做法是转换成swf文件来浏览:由于项目需要,就用 flexpaper 来实现了下,功能比较简单:但是文件的惰性加载确实让笔者挠头了一把! 下面是笔者的方法: 采用流的方式来读取每一页的swf文件,然后展示(pdf转换成多个swf文件网上一大把):亲自测试,100M的pdf文档,转换后在线浏览,延迟不超过1s; JSP页面 : <%@ page language="java" import="java.util.*" pageE

angular懒加载的一些坑

写在前面 最近在工作中接触到angular模块化打包加载的一些内容,感觉中间踩了一些坑,在此标记一下. 项目背景: 项目主要用到angularJs作为前端框架,项目之前发布的时候会把所有的前端脚本打包压缩到一个文件中,在页面初次访问的时候加载,造成页面初始载入缓慢,在此基础上,提出按需加载,即只有当用户访问某个模块的时候,该模块的脚本才会加载. 工具类: 项目使用grunt打包根据AMD规范,使用grunt-contrib-requirejs来压缩合并模块,同时用ocLazyLoad来完成ang

判断浏览器是否支持CSS3 已经初步探索JS 惰性加载

分享一个判断浏览器是否支持的函数,然后有牵扯到了一个懒性加载的概念. var iscss3=(function(){ var _style=document.createElement("div").style; return 'transition' in _style||'mozTransition' in _style||'webkitTransition' in _style; })() 什么是惰性加载呢,像我们JS和CSS一样 很多浏览器属性和方法都不兼容,需要用到大量的分支

高阶函数 - 惰性加载函数

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>高阶函数 - 惰性加载函数</title> </head> <body> <div style="width: 100px; height: 100px; background: #f60;" id=&quo

JS设计模式—单体模式(即时加载/惰性加载)

单体模式作为一种软件开发模式在众多面向对象语言中得到了广泛的使用,在javascript中,单体模式也是使用非常广泛的,但是由于javascript语言拥有其独特的面向对象方式,导致其和一些传统面向对象语言虽然在单体模式的思想上是一致的,但是实现起来还是有差异的. 首先来看看传统面向对象语言对于单体模式的定义:单体模式是只能被实例化一次并且可以通过一个众所周知的访问点来访问的类.这个定义有两点突出了传统面向对象语言的特征,即类和实例化,所以对于传统面向对象语言来讲,单体模式是建立在其类和实例化的

angular 图片加载失败 情况处理? 如何在ionic中加载本地图片 ?

1.angular 图片加载失败 情况处理 在directive中定义组件,在ng-src错误时,调用err-src app.directive('errSrc',function(){ return { link: function(scope, element, attrs){ if(attrs.src == 'undefined'){ attrs.$set('src', attrs.errSrc); } element.bind('error', function() { if (attr

angular 数据加载动画 longding

由于公司服务器架构不行,每次加载数据都要很久,但是都是使用angular来渲染数据,不像jquery有beforsend什么的方法, 这是一个github上找的,很轻使用也很简单 1.安装  npm intall nagular-buys 2.引入 <script src="../bower_components/angular/angular.js"></script> <script src="../bower_components/angu

Angular页面加载闪现解决方案 ng-cloak

在做Angular项目时,经常会遇见在浏览器上闪烁表达式({{ express }} ),及模块(div)的闪烁,会闪现/闪烁隐藏的数据,之前用过vue.js,可以通过v-clock解决,同理Angular也可以通过ng-cloak来实现防止闪烁的方案. <div id="template1" ng-cloak>河马家</div> <div id="template2" ng-cloak> {{hema}}</div>

angular模板加载 ----ng-template

Angularjs作为mvc(或者说mvvm)框架,同样具备模板这一基本概念. NG加载模板的顺序为 内存加载---AJAX加载. 内存加载 如果之前使用过Bootstrap 插件的ng版,即angular-ui,就会了解到这种方式的具体应用.模板本质上是字符串,把字符串直接写入内存,加载时直接从内存获取,速度会更快,有两种方式显式启用内存加载. 通过使用$templateCache service来实现 angular.module('myApp', []) .controller('myCt