我想开始使用 angularjs、css3 和 html5 开发移动混合应用程序。正在寻找一个框架,并找到了这两个。两者看起来都很好,但是我无法对它们进行很好的比较。谁能列出两者的优缺点。
在可扩展性、开箱即用组件、速度以及与 Angular 和目标设备的兼容性方面对它们进行比较将非常有帮助
我想开始使用 angularjs、css3 和 html5 开发移动混合应用程序。正在寻找一个框架,并找到了这两个。两者看起来都很好,但是我无法对它们进行很好的比较。谁能列出两者的优缺点。
在可扩展性、开箱即用组件、速度以及与 Angular 和目标设备的兼容性方面对它们进行比较将非常有帮助
自这两个框架发布以来已经过去了一年。Onsen UI 目前处于稳定的 1.2 版本,而 Ionic 处于最后一个候选版本状态。
我和他们两个都合作过,所以让我给你一个简短的概述,我还写了一篇更大的博客文章,你会在这个答案的末尾找到它。
我不会详细介绍核心框架;如果你有以前的 AngularJS 知识,你将很容易过渡到 Ionic 或 Onsen UI。
这两个框架都是围绕 AngularJS 构建的,它们在很大程度上依赖于指令,您也可以轻松地构建您的自定义指令。Onsen UI 还具有对 jQuery 的支持(如果你问我,那是不必要的)。
两个框架都支持 Android 4+、iOS 6+(部分功能在 Android 2.3 上可用),Onsen UI 也正式支持 Firefox OS 和桌面浏览器。Ionic 没有官方桌面支持,但它仍然可以工作(想象一下,它不会很漂亮)。
Ionic 目前不支持 Windows Mobile 平台(以后会有);Onsen UI 支持目前正在开发中(自 2014 年 11 月起)。
这两个框架都支持某种拆分视图功能,因此它们可以用于表格开发。
这两个框架都有一个独特的漂亮的扁平 UI。我更喜欢 Ionic 而不是 Onsen UI 的外观和感觉,但这是个人品味的问题。两个默认主题看起来都像 iOS 7。
Onsen UI 支持 Android 和 iOS 的原生主题。Ionic 框架对所有平台使用相同的主题,但某些功能将取决于平台(例如选项卡外观)
这两个框架都有一个工作主题构建器。
Ionic 支持 SASS,而 Onsen UI 是围绕 Topcoat CSS 库构建的。
两个框架都有一个大的小部件支持(指令)
Onsen UI 有更好的文档。它在两个不同的位置分开。第一个是“组件”,您可以在其中看到不同的指令,每个指令都有一个您可以使用和复制的工作示例。第二部分是“指南”,指导您完成应用程序创建过程。
Ionic 的文档杂乱无章(非常分散)。即使您以前有 AngularJS 经验,它也缺乏真正的“入门”教程。它向您展示了各个部分,但没有展示如何正确连接它们。
另一方面,Ionic 拥有更大的社区,因此您可以轻松找到问题的解决方案。
Ionic 框架有一个很棒的官方论坛 + 大型 StackOverflow 社区。同时,Onsen UI 仅使用 StackOverflow 作为帮助中心(我认为这是失败的)。
Onsen UI 有一个名为 MONACA IDE(很棒的工具)的 HTML5 IDE,Ionic IDE 目前正在生产中;你可以参加beta测试。
Ionic 有一个不断增长的 3rd 方插件社区(例如日期选择器);我找不到任何 3rd 方 Onsen UI 插件
我写了一篇更大的文章,涵盖了 Ionic / Onsen UI 的变化,请在此处找到。
由于这两个框架都很新而且不是很流行(还没有!),我认为没有人花时间对两者进行广泛的比较。我什至不认为最终的开箱即用组件集是由开发人员自己决定的,积极的开发仍在继续。
至于兼容性,混合应用程序在安装它们的设备的本机浏览器中运行。两个框架都需要 CSS3,因此任何一个框架都不会支持旧手机。
StackOverflow 上的 OnsenUI-tag 是 OnsenUI 提供的唯一支持(当前),在撰写本文时有 0 个问题/答案。Ionic 在他们的网站上有一个非常活跃的论坛 + 一些关于 SO 的问题/答案。
我认为有一个活跃的社区支持一个框架最终会导致一个更好的框架。因此,我会选择离子。就个人而言,我发现 Ionic 的标准设计也更有吸引力,但你应该自己判断。
离子
温泉UI
Ionic 具有更成熟的特性和 CSS 组件集并且开箱即用。代表 UI 元素(指令)的可注入委托服务使您可以更好地控制 UI/UX 交互。开发社区(目前)非常活跃,并且越来越受到关注。
我无法正确谈论两者之间的速度/性能,但知道两者都针对移动设备进行了优化。
随着我的发展,我将通过比较进行报告。祝你好运。
经过一段时间的原生开发后才开始使用 ionic。必须认真地说它有一些很棒的 cli 功能!例如,在我看来,你可以从一个要点开始你的项目,这对 poc 来说很好
还没有能够测试一切,但我所看到的真的让我印象深刻!
它以自己的方式有据可查,活跃的社区,并且不断变得更好。
只是想分享我对它的价值的看法
由于某些原因,我发现 Ionic 是最好的,比如他们的社区支持和文档。很长一段时间以来,我仍在评估温泉,但与 Ionic 相比,我仍然没有找到一件能让我趋之若鹜的独特事物
我在 Ionic 框架中工作了 1 年,从事一个真正的项目,我用 Ionic 创建了一个游戏,它非常特别,因为如果你想创建游戏,混合应用程序不是最佳选择。当您开发游戏时,您需要性能!但是,如果您开发具有少量动画的简单游戏,那就太好了。这是我在 Playstore 中的游戏,它是一款记忆游戏“Memory Party”: https ://play.google.com/store/apps/details?id=fr.jhaccoun
为什么 Ionic 是一个不错的选择: