1

现在,你可以使用Angular来开发小程序

 2 years ago
source link: https://segmentfault.com/a/1190000041212777
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

现在,你可以使用Angular来开发小程序

  • 大家可能都曾经搜索过,Angular平台是否能开发小程序,但是得出的搜索结果并不是那么乐观.
  • 也曾经有人嘲讽过,搞Angular的一帮人都是吹的很响,但是实际上连个小程序都不支持....这个我想大家应该都能看到...毕竟搜索Angular开发小程序关键字,前几个搜索结果就有...这条结果就像是挂在耻辱柱上...挂了将近4年.

angular-miniprogram的诞生

  • 也许是为了像其他人证明什么,也许是对Angular现有的生态不甘心,我建立了这个项目
  • 大概半年多以前,这个还是一个仅仅能跑通hello-world的一个项目,甚至当时的我都没有预料到,短短半年我就能将这个项目的兼容程度提高到接近原生的程度.
  • 今天2022.1.1,angular-miniprogram正式发布,你可以使用与原生一样的思维,甚至使用原生的大部分生态,来开发小程序

项目的难点

  • 其实正如前面说的,这4年来,好像没有一个人来开发这个东西,原因很简单,就是难.
  • 其实承认这个是很不容易的,Angular项目的开发可能不需要了解太多知识,但是兼容一个平台,可能就需要查看Angular大量的源码,这些源码有的是运行时的,有点是构建时的,要适配的东西极多,并且,Angular还自带一套生态,项目能启动?没问题,再来适配下配套生态吧?
  • 这半年多的时间整个项目思维上的重构,就有3次(推翻设计,重新实现),直至最后一次的实现,就突然有一种感觉,就是好像与设计Angular框架的人对上了电波,好像程序就应该这么设计,于是顺着这个思路,不断的实现,直至今天正式完成
  • 可能,整个项目即使发布,仍然会有瑕疵,但是路线对了,我想,未来应该不会有大的改变
  • 最后一次重构,几乎重新修改了所有文件,为的就是方便维护及后来人查看及提交pr

Angular下小程序的启动流程

  • 启动流程图
  • 都闪开,我现在要开始吹了...
  • 从Angular平台角度来讲,angular-miniprogram是即Angular(web 平台),Ionic(移动端,ios,android),angular-electron(pc),nativescript(类原生 ios,android)之后,新支持的小程序平台(各个大厂的小程序)
  • 从小程序平台来讲,目前react阵营有taro代表,vue阵营有uni-app代表,而angular-miniprogram则为即这两者之后,Angular平台的唯一的一个
  • 所以说即使不清楚这个项目到底是否难度高,也可以清晰的了解到这个项目的战略地位,也就是俗话说的,我可以不用,你不能没有
  • 最后,给所有的Angular开发者,希望你们在有开发需求的时候想起这个项目,也欢迎提issue,提pr,甚至暴躁一点喷我也没关系,只要能对Angular的生态起作用,推广Angular有帮助,说什么都可以的
  • 源码地址
  • 模板地址
  • 视频地址

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK