摘要: 目录 序言 变更检查机制 性能优化原理 性能优化方案 小结 参考 序言 本文将谈一谈 Angular 的性能优化,并且主要介绍与运行时相关的优化。在谈如何优化之前,首先我们需要明确什么样的页面是存在性能问题?好的性能的衡量指标是什么?性能优化背后的原理又是如何的?如果你对这些问题感兴趣,那么就请继续 阅读全文
posted @ 2021-09-30 16:16 OneForCheng 阅读(1220) 评论(0) 推荐(0) 编辑
摘要: 目录 序言 遗留项目概述 条件限制下的升级原则 升级改造的演进方向 遇到的主要难点 小结 参考 1. 序言 Angular 官方网站针对 从 AngularJS 升级到 Angular 提供了比较详细的文档,并给出了一个 PhoneCat 升级教程 的案例演示,指导一步步如何改造。但总的来说,这个案 阅读全文
posted @ 2021-01-03 10:20 OneForCheng 阅读(754) 评论(1) 推荐(0) 编辑
摘要: 目录 序言 Zone 是什么 ZoneJS 的原理 ZoneJS 的应用场景 参考 1. 序言 ZoneJS 是 Angular 团队受到 Dart 的 Zone 的启发,为 Angular v2 及其以上版本设计的核心模块。Angular 通过引入 ZoneJS 使得其变更检测机制更加简单与可靠。 阅读全文
posted @ 2020-08-10 21:35 OneForCheng 阅读(2099) 评论(0) 推荐(0) 编辑
摘要: 目录 前言 观察者模式 迭代器模式 RxJS 中两种模式的结合和实现 小结 参考 1. 前言 RxJS 是一个库,它通过使用observable(可观察对象)序列来编写异步和基于事件的程序。其结合了观察者模式、迭代器模式和使用集合的函数式编程,以一种理想方式来管理事件序列所需要的一切。 本文将主要探 阅读全文
posted @ 2020-08-04 15:06 OneForCheng 阅读(590) 评论(0) 推荐(0) 编辑
摘要: 目录 序言 单向数据绑定 vs 双向数据绑定 单向数据流 vs 双向数据流 数据流与数据绑定 参考 1. 序言 在前端三大主流的框架中,我们可能会经常听到 React 是单向数据流,采用单向数据绑定,而 Vue 2.x 也是单向数据流,但同时支持单向数据绑定和双向数据绑定,而 Angular 和 A 阅读全文
posted @ 2020-07-26 16:26 OneForCheng 阅读(2056) 评论(2) 推荐(2) 编辑
摘要: 目录 序言 AngularJS 简介 Angular 2.0 的动机 现如今的 Angular Angular 的核心概念 参考 序言 Angular 一般意义上是指 Angular v2 及以上版本,而 AngularJS 专指 Angular 的所有 1.x 版本。出现这种区别是由于 Angul 阅读全文
posted @ 2020-07-19 20:31 OneForCheng 阅读(993) 评论(0) 推荐(1) 编辑
摘要: 目录 什么是循环加载 CommonJS 模块的循环加载 ES6 模块的循环加载 小结 参考 1.什么是循环加载 “循环加载”简单来说就是就是脚本之间的相互依赖,比如a.js依赖b.js,而b.js又依赖a.js。例如: // a.js const b = require('./b.js') // b 阅读全文
posted @ 2020-07-12 20:13 OneForCheng 阅读(927) 评论(0) 推荐(1) 编辑
摘要: 目录 序言 React 的核心思想 传统 diff 算法 React diff 两个假设 三个策略 diff 具体优化 tree diff component diff element diff 如何进行 diff 小结 参考 1.序言 此篇文章所讨论的是 React 16 以前的 Diff 算法。 阅读全文
posted @ 2020-07-05 17:33 OneForCheng 阅读(7761) 评论(1) 推荐(3) 编辑
摘要: 目录 序言 DOM事件流 事件捕获阶段、处于目标阶段、事件冒泡阶段 addEventListener 方法 React 事件概述 事件注册 document 上注册 回调函数存储 事件分发 小结 参考 1.序言 React 有一套自己的事件系统,其事件叫做合成事件。为什么 React 要自定义一套事 阅读全文
posted @ 2020-06-24 14:37 OneForCheng 阅读(9850) 评论(1) 推荐(2) 编辑
摘要: 目录 代码分割 React的懒加载 import() 原理 React.lazy 原理 Suspense 原理 参考 1.代码分割 (1)为什么要进行代码分割? 现在前端项目基本都采用打包技术,比如 Webpack,JS逻辑代码打包后会产生一个 bundle.js 文件,而随着我们引用的第三方库越来 阅读全文
posted @ 2020-06-15 18:41 OneForCheng 阅读(14389) 评论(1) 推荐(4) 编辑