Ionic 框架究竟是什么?

问题描述

我知道您可以使用 Ionic 创建跨平台应用程序。这些可以在 Vue、React、Angular 等中创建。但是我确实想知道哪些依赖项负责什么。

后台,正如我在 package.json 中看到的那样,Ionic 框架使用 Capacitor。如果您使用 Ionic CLI 运行命令 ionic start myApp tabs,则会创建一个新项目并安装各种依赖项,包括 Capacitor。

不过,我可以轻松地将 Capacitor 添加到现有的 Vue.js 项目中,而且我还可以创建跨平台应用程序。

因此,我的猜测是 Ionic 只是 Capacitor 之上的一个附加抽象层,并且已经实现了一些使用 Capacitor API 的组件,例如在不同平台上提供不同的样式。

解决方法

请记住,Ionic 出现在 Capacitor 之前,并了解两者均来自同一创作者。

使用 Ionic,您可以使用相同的代码构建 Android、iOS、PWA、桌面。您还可以选择您喜欢的框架与 Ionic 一起使用,例如 Angular、VueJS、React 等。

电容器负责您的代码和设备功能之间的桥梁。

优点:自定义动画、组件自定义、Web 组件、设计以匹配原生 iOS13、iOS Segment 设计、可折叠标题、iOS 中的大标题、可折叠标题内的搜索栏、滑动以关闭 Modals ,带有更新动画的新 iOS 菜单设计覆盖,iOS 中的刷新拉动图标,Material Design 刷新,iOS 中的列表标题,开源动画实用程序,免费和开源的图标库,后退按钮,卡片,分段,拆分窗格,封装样式、完全支持 Ivy Angular 的新渲染器等等...更多关于此 Article

Appflow 是由 Ionic Team 提供的服务。

,

正如@Everton-Costa 所说,Ionic 先于电容器,并且一直致力于提供多平台堆栈以通过 html5/浏览器功能和用于本机桥接的cordova 构建应用程序。 Ionic 很早就开始使用 angularjs,然后是 Angular(N),现在它实际上与 Web 框架无关。 Ionic 有很棒的 UI 组件,可以在许多浏览器代理上很好地工作,并且在不同屏幕尺寸等下表现良好。

我认为电容器就像类固醇上的科尔多瓦,它的插件/模块试图更加独立于平台(ios/android/web)。例如,您不必处理诸如 isAndroid()|| 之类的存储插件isIOS() 或 isDesktop() 执行存储操作,模块本身为运行环境选择最佳策略。

“Appflow”是使用 CI/CD 进行缓和的付费产品。