Angular入门到精通系列教程(6)- Angular的升级
环境:
- Angular CLI: 11.0.6
 - Angular: 11.0.7
 - Node: 12.18.3
 - npm : 6.14.6
 - IDE: Visual Studio Code
 
1. 摘要
近些年Web技术飞速发展,新的类库、框架如雨后春笋般不断涌现,而每个类库也不断的更新、升级,甚至是不再兼容的升级。笔者之前维护的一个6年项目,是用jQueryMobile开发的,估计入门web开发比较短的同学都没有听说过吧。另外,就拿Angular来说,从2.0开始,使用ts开发,不再兼容1.0 版本。从2.0开始,命名为Angular,1.0的叫angularJS, 2个版本彻底切割。而这也是angular流失很多用户的其中一个原因。
针对这些问题,Angular专门提供了版本升级的指导方案,非常详细、准确(Angular每半年发布一个主版本,这个也是必须的)。
2. https://update.angular.io/
https://update.angular.io/ 是官方的angular升级指导页面,你可以选择你的项目的版本,以及要升级到的版本;同时可以选择项目使用的技术,比如是否使用了Angular Material (这也是之前推荐这个UI框架的原因--升级方便),是否和AngualrJS同时使用等等。之后,自动提示升级步骤。
升级主要通过 ng update xxx 来实现, ng update 命令不同于npm命令,npm update相当于 npm+更改配置(代码),也就是说,再更新完node-modules之后,ng update会自动更新配置文件,甚至是代码中的基本的import的代码,实现自动升级、更新。
举例,10.2升级到11.1,如果没有涉及到复杂的anuglar技术,大致的升级步骤是:
- Run 
ng update @angular/core @angular/cliwhich should bring you to version 11 of Angular. - Run 
ng update @angular/material. - Angular now requires TypeScript 4.0. ng update will migrate you automatically.
 - Support for IE9, IE10, and IE mobile has been removed. This was announced * in the v10 update.
 
3. 总结
- Angular虽然更新、升级比较频繁(从某种意义上也是优点),但是升级部分确实做得最完善的
 - UI框架,@angular/material可以实现和Angular的同步升级,其他第三方框架,都会有演示,时间不等
 - 个人不推荐使用最新的版本,不做小白鼠。可以使用之前发布的一个版本,比如现在是v11,那么我们就使用v10。更稳定,同时网上资料也多。
 - 及时更新angular版本,免得技术债欠的越来越多而导致无法升级。
 - 这个升级指导也是相对的,如果你对Angular有些特殊的用法,或者没有安装官方推荐方式使用,升级也是比较麻烦的。
 - 升级时,如果跨多版本,建议一个版本一个版本的升级,每升级一次,执行UT或者把站点跑起来试试,以防出错。
 
---------------- END ----------------
======================
Angular入门到精通系列教程(6)- Angular的升级的更多相关文章
- Angular入门到精通系列教程(4)- 开发环境搭建以及入手项目
		
1. 本地开发环境搭建 1.1. node.js 1.2. Angular CLI 2. 开发工具 - Visual Studio Code 第一个Anuglar项目 创建第一个anuglar项目 A ...
 - Angular入门到精通系列教程(7)- 组件(@Component)基本知识
		
1. 概述 2. 创建Component 组件模板 视图封装模式 特殊的选择器 :host inline-styles 3. 总结 环境: Angular CLI: 11.0.6 Angular: 1 ...
 - Angular入门到精通系列教程(10)- 指令(Directive)
		
1. 摘要 2. 组件与指令之间的关系 2.1. 指令的种类 3. Angular 中指令的用途 4. 指令举例 4.1. 指令功能 4.2. Anuglar CLI生成基本文件 4.3. Direc ...
 - Angular入门到精通系列教程(11)- 模块(NgModule),延迟加载模块
		
1. 摘要 2. NgModule举例.说明 3. Angular CLI生成模块 4. 延迟加载模块 5. 总结 环境: Angular CLI: 11.0.6 Angular: 11.0.7 No ...
 - Angular入门到精通系列教程(13)- 路由守卫(Route Guards)
		
1. 摘要 2. 路由守卫(Route Guards) 2.1. 创建路由守卫 2.2. 控制路由是否可以激活 2.3. 控制路由是否退出(离开) 3. 总结 环境: Angular CLI: 11. ...
 - Angular入门到精通系列教程(14)- Angular 编译打包 & Docker发布
		
目录 1. 概要 2. 编译打包 2.1. 基本打包命令 2.2. 打包部署到二级目录 3. Angular站点的发布 3.1. web服务器发布 3.2. 使用docker发布 4. 总结 环境: ...
 - 办公软件Office PPT 2010视频教程从入门到精通系列教程(22课时)
		
办公软件Office PPT 2010视频教程从入门到精通系列教程(22课时) 乔布斯的成功离不开美轮美奂的幻灯片效果,一个成功的商务人士.部门经理也少不了各种各样的PPT幻灯片.绿色资源网给你提供了 ...
 - Part 7:自定义admin站点--Django从入门到精通系列教程
		
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. Python及Django学习QQ群:453 ...
 - 第一章:模型层model layer -- Django从入门到精通系列教程
		
该系列教程系个人原创,并完整发布在个人官网刘江的博客和教程 所有转载本文者,需在顶部显著位置注明原作者及www.liujiangblog.com官网地址. 题外话: Django的教程写到这里,就进入 ...
 
随机推荐
- "迎圣诞,拿大奖"赛题——SQLI
			
0x01 本题所需知识清单: 1.php sprintf()函数漏洞:https://blog.csdn.net/WQ_BCJ/article/details/85057447 2.布尔盲注基本pla ...
 - mysql  列转行 动态写法
			
-- 列转行动态sql -- 测试表DROP TABLE IF EXISTS `tb_score`; CREATE TABLE `tb_score` ( `id` int(11) NOT NULL A ...
 - 权威部门接连下发文件,Panda交易所带你走进区块链概念股
			
Panda交易所获悉,7月21日,北京市地方金融监督管理局发文<北京股权交易中心获得首批开展区块链试点建设资格>,文中表示证监会7月7日发布<关于原则同意北京.上海.苏州.浙江.深圳 ...
 - Codeforces Edu Round 65 A-E
			
A. Telephone Number 跟之前有一道必胜策略是一样的,\(n - 10\)位之前的数存在\(8\)即可. #include <iostream> #include < ...
 - Springboot mini - Solon详解(四)- Solon的事务传播机制
			
Springboot min -Solon 详解系列文章: Springboot mini - Solon详解(一)- 快速入门 Springboot mini - Solon详解(二)- Solon ...
 - tornado 作业 自定义模板 UIMethod以UIModule
			
自定义uimodule s3.py import tornado.ioloop import tornado.web import UIMethod as mt class MainHandler(t ...
 - SpringBoot整合Swagger2详细教程
			
1. 简介 随着前后端分离开发模式越来越流行,编写接口文档变成了开发人员非常头疼的事.而Swagger是一个规范且完整的web框架,用于生成.描述.调用可视化的RESTful风格的在线接口文档,并 ...
 - JavaSE02-基本语法
			
1.注释 注释是对代码的解释和说明文字,可以提高程序的可读性,因此在程序中添加必要的注释文字十分重要. Java中的注释分为三种: 单行注释.单行注释的格式是使用//,从//开始至本行结尾的文字将作为 ...
 - 1款开源工具,实现自动化升级K3S集群!
			
即便你的集群能够平稳运行,Kubernetes升级依旧是一项艰难的任务.由于每3个月Kubernetes会发布一个新版本,所以升级是十分必要的.如果一年内你不升级你的Kubernetes集群,你就会落 ...
 - 线段树入门详解,洛谷P3372 【模板】线段树 1
			
关于线段树: 本随笔参考例题 P3372 [模板]线段树 1 所谓线段树就是把一串数组拆分成一个一个线段形成的一棵树. 比如说像这样的一个数组1,2,3,4,5: 1 ~ 5 / ...