Cordova
Cordova是贡献给Apache后的开源项目,是从PhoneGap中抽出的核心代码,是驱动PhoneGap的核心引擎。提供了一组设备相关的API,通过这组API,移动应用能够以JavaScript访问原生的设备功能,如摄像头、麦克风等。支持如下移动操作系统:iOS, Android,ubuntu phone os, Blackberry, Windows Phone, Palm WebOS, Bada 和 Symbian。
AngularJS
AngularJS 是一个 JavaScript 框架,通过新的属性和表达式扩展了 HTML, 可以构建一个单一页面应用程序
Ionic
ionic是一个强大的 HTML5 应用程序开发框架。 可以帮助您使用 Web 技术,比如 HTML、CSS 和 Javascript 构建接近原生体验的移动应用程序。ionic是基于angular语法来写的
三者关系
ionic把AngularJS 与Cordova经行整合 ,将Cordova 封装为一个模块,供angular注入调用。【3者关系】
ionic本身也提供了页面载入的生命周期函数,如视图载入前、后、离开等。并且提供了一些ui【ionic】
Ionic 底层东西如打包、调用摄像头等其实是调用了Cordova 来处理的。如果你不开机发webapp或者不调用原生设备的东西,那么没必要用Ionic。 【ionic与cordova】
Ionic 是一个全堆栈的混合应用开发框架,可以理解成 Ionic = Cordova + AngularJS + Ionic UI【3者关系】
ionic不是必须的
你完全可以用h5新增的调用底层设备Api来完成调用硬件操作,而没必要用ionic(它借助cordova实现)
你完全可以手写ui,而不用ionic提供的ui
你完全可以只用cordova,如果你项目不是angular的话
你也完全可以用其他整合框架代替ionic,如mui等,至少人家调用底层设备时自己封装的不像inoic还借助cordova。不过mui实现这些全靠h5新增api实现,而cordova则用Android、ios等原生代码去解决,相比之下新能更好。估计ionic要给cordova使用费
什么是 ionic?他和 Cordova、Angular 有什么联系?
ionic = Cordova + Angular + ionic CSS
Cordova 提供了使用 JavaScript 调用 Native 功能,ionic CSS 是一套 UI 框架,ionic 对 Angular 进行了封装(其中包含整合cordova到angular中)。
https://www.cnblogs.com/Jeely/p/6685914.html