写在前面

本文适读人群

  1. 你手头有正在维护的基于angular1.x开发的老项目
  2. 这个老项目很臃肿
  3. 这个老项目还在为公司盈利,还时不时有新的需求要加进来
  4. 你是个对技术有追求的人,渴望实践新技术
  5. 你想使用新技术(ng2+,vue,react等)把这个老项目推倒重来,无奈这样做risk和workload都很高,项目计划不允许你这么做。

如果你满足以上5个条件,那么我要和你握把手,你和我面临着同样的困境,但你比我幸运的是,能读到我的这篇文章。

最终目标

闭上眼睛,想象下这样一幅画面:一辆正在行驶的列车,车头后面挂着几十节车厢,这些车厢的车皮都是用5年前的制造工艺打造出来的。诶!就在这个这个时候,火车进站,列车员给它最后挂上一个全新的车厢,这个车厢可厉害了,制造工艺使用的是全球最新的技术!唉!又过了一站,我们把一节运煤的老车箱卸掉,换上一节新的运煤车厢......

正文开始

准备工作

首先你要对ng2+有一定了解,至少要跑过官网的那个DEMO-HERO。

几个场景

大方向上的,ng2+提供了2种混合升级模式,你可以理解为:

  1. 第一种是火车头用ng1的技术,车厢用ng1和ng2+混合技术。(这也是本文重点介绍的方式)
  2. 第二种是火车头用ng2+的技术,车厢用ng1和ng2+混合的技术。(本文不涉及)

针对第一种场景,记住它是以ng1为核心,那你面临以下3个子场景:

  1. 把ng2+写的component降级为ng1可以用的directive,那ng1就可以随心所欲的使用ng2+版的directive了。

  2. 那你ng2+写component的时候,需要用到原来ng1里已经存在的一些directive啊,service啊,factory啊,provider啊,filter啊,怎么办?当然把他们升级啦。我们把上面黑红绿的方块放大。
  3. ng1的controller想使用ng2+写的service? 当然是把ng2+的service降级成provider啦!
    这个场景其实跟第一点是差不多的,我就不画图了。

所以混合式应用的本质就升级降级,从而使他们能兼容在一起愉快的工作。

思路篇就写到这里,欢迎大家素质三连,点赞,评论,收藏。我会尽快放出第二篇--代码篇

教你如何让angular 5的花朵绽放在angular 1这棵老树上(上)--思路篇相关推荐

  1. angular过滤字符_如何使用Angular和Azure计算机视觉创建光学字符读取器

    angular过滤字符 介绍 (Introduction) In this article, we will create an optical character recognition (OCR) ...

  2. @angular/core里的 NgZone -使得Angular不跟踪变化

    前言: 在模板中实时获取一个变量,模板中就频繁的更新显示,频繁的变动将造成性能损耗. 或者在双向绑定时,异步事件的发生会导致组件中的数据变化,但是你想要适当时机再改变模板显示. 一.NgZone An ...

  3. Angular项目构建指南 - 不再为angular构建而犹豫不决(转)

    如果你不知道什么是Angular或者根本没听说过,那么我接下来所说的对你来说毫无益处,不过如果你打算以后会接触Angular或者干脆要涨涨姿势~读下去还是有点用的. Angular和它之前所出现的其余 ...

  4. Angular 5.0 学习2:Angular 5.0 开发环境的搭建和新建第一个ng5项目

    1.安装Node.js 在开始工作之前,我们必须设置好开发环境. 如果你的机器上还没有Node.js®和npm,请先安装它们. 去Node.js的官网,https://nodejs.org/en/,点 ...

  5. angular示例_用示例解释Angular动画

    angular示例 为什么要使用动画? (Why use Animations?) Modern web components frequently use animations. Cascading ...

  6. angular 自定义组件_如何创建Angular 6自定义元素和Web组件

    angular 自定义组件 by Prateek Mishra 通过Prateek Mishra 如何创建Angular 6自定义元素和Web组件 (How to create Angular 6 C ...

  7. 【Angular专题】——(1)Angular,孤傲的变革者

    目录 一. 漫谈Angular 二. 如果你还在使用Angularjs 三. 我计划这样学习Angular技术栈 一. 漫谈Angular Angular,来自Google的前端SPA框架,与Reac ...

  8. 【Angular专题】——【译】Angular中的ForwardRef

    原文地址:https://blog.thoughtram.io/angular/2015/09/03/forward-references-in-angular-2.html 作者:Christoph ...

  9. Angular项目构建指南 - 不再为angular构建而犹豫不决

    摘要: 洋洋洒洒写了一大堆都是最近构建项目的一些经验,对于angular项目的构建确实不大同于以往的前端框架,所以特此记录分享给大家,希望有所帮助. 前言 接触Angular也有小半个月了,虽然没有使 ...

最新文章

  1. 小脑过度活跃,会引起整个大脑的问题
  2. 安全模式怎么更改计算机用户,台式电脑怎么进入安全模式?电脑安全模式有什么用?...
  3. c#后台如何导出excel到本地_C#后台导出Excel
  4. Ansible 五(inventory文件 主机清单)
  5. C\C++ 获取当前路径
  6. PHP秒杀截流原理,节流阀和去抖动的基本实现方法介绍
  7. Qt的槽可以使用默认参数
  8. 深入理解并发的关键字-synchronized
  9. 关闭进程_当手机快没电时,别再结束进程关闭手机了,不仅没用还更耗电
  10. 忽略证书_中专考生注意!忽略这一点,四科全过也拿不到执业药师证书!
  11. jenkins下载插件慢解决方式
  12. Word自动生成目录的方法
  13. 【第二周】吴恩达团队AI for Medical Diagnosis大作业
  14. 思科 终端服务器的配置
  15. 弃用 Notepad++,这款开源替代品更牛逼!
  16. 多IP服务器怎么样?多IP服务器有什么优势?
  17. JAVA 去除字符串首尾特定字符
  18. WPBC乳腺癌数据集建模(Ⅱ)—预后诊断模型建立
  19. 卡西欧计算机亮度,卡西欧怎么调3秒灯
  20. 智能手机低价成潮,vivo为何执念高端?

热门文章

  1. 2021年登高架设考试内容及登高架设考试资料
  2. Logstash收集多数据源数据神器
  3. Intermec 700 開發體驗(2)
  4. Altium Designer入门使用3--印制电路板设计流程与经验之谈 2
  5. 装机大热门!Sempron超频主板选购宝典
  6. 重磅!「自然语言处理(NLP)」全球学术界”巨佬“信息大盘点(三)!
  7. gis里创建要素面板怎么打开_规划用地CAD转gis文件并制作用地平衡表
  8. 每日英语:Female muscle | Now is not a good time to be a man
  9. Linux挂载nfs只读文件系统,[mcj]利用NFS mount远程目录之后文件夹变成只读的解决办法...
  10. 制作“用python做的第一个小游戏”过程中的问题和解决