uniappx了解过吗?浅谈uts+uvue下的uniappx是什么。其实对于uniappx

所以本次也是带着讨论的角度来展开,没什么深入技术分析,因为也没什么源码可以看到,主要从文档出发,从看官方介绍可以看到:

"在App端,uni-appx在iOS编译为swift、在Android编译为kotlin。没有使用js引擎、webview,完全达到了原生应用的功能、性能。"

那就是说这是一个将uts代码编译为原生代码去运行的框架,那在没有js引擎的情况下,是不是意味着基本大部分npm上的js库都不支持了?毕竟没有js引擎了,我也比较好奇uni-app用户应该是小程序开发居多,那么npm不兼容对选择的影响会有多大?

“uts替代的是js,而uvue替代的就是html和css。或者如果你了解flutter的话,也可以理解为uts对标dart,而uvue对标flutter。”

在使用uts这个基础上,uts是否就和Dart一样,需要重新构建一套开发者语言生态?虽然uts和js类似所以成本会比较低,但是也需要「好心人」or「企业」本身去做这个事情,我想这个问题会是uni-appx是否持续存活的关键,毕竟大部分开发者要的是「开箱即用」,「用爱发电」这种事情只有极少数愿意去做。

"uvue支持的vue语法,是按vue3实现的,uvue支持的css语法,是web的子集,类似于nvue的css,仅支持flex布局"

所以整个生态还是需要Vue和JS开发者们来参与,不兼容Vue2这个貌似问题不大?

如果编译适配真的做的不错,那么性能说不定对比uni-app会好很多,因为weex还是需要jscore和运行时的OEM转换,但是如果直接编译为原生UI,那就几乎可以说和原生UI一样的运行逻辑,我这样理解应该没错吧?

因为我没看到编译转换部分的代码,所以也只能猜测就是uts转为kotlin下的AndroidView去进行布局这样的理解,也就是运行时其实就是一个原生App。

从官方给出的迁移指南上看,基本上难度还是在于plugin和css样式上,也就是如果以前你不用uvue,单纯用uni-app开发小程序和直接打包出App的话,我理解还不如重写,例如uni-appx里就不支持uvue页面和vue页面混写,你必须都是uvue。

另外,由于政策等限制,uni-appx官方在打包后不提供热更新支持,这个也可以理解,可执行二进制文件的热更新不符合规范,官方如果内置就会导致上架问题,你可以自己二次开发,但是官方绝不能内置。

当然,因为uni-appx的特殊性,所以目前绝对性的开发只能用HBuilderX,如果你能做到用txt写代码那确实可以不用HBuilderX,不过HBuilderX的体验一直都是难以言喻就是了。

总的来看,它就是转译为原生,所以它即不是weex路线,也不是flutter路线,因为它既依赖于平台,又不依赖于中间运行时。

如果说uni-app的定位像是以小程序为主,App为辅助,那么uni-appx更像是App为主,小程序为辅。

所遇uni-app这次尝试很大胆,因为2023年了App市场其实还有多少余地?可以遇见,后续uni-appx会存在两端对齐的UI问题,weex/rn走过的路,样式对齐和OS不同版本API兼容问题也会需要处理,例如:

在Android上调好的样式,在iOS上出现适配异常,因为不像是Flutter直接通过GPU绘制出一致UI,平台对齐一直是一个手工活,以前通过webview可以简单屏蔽,但是自己做就需要不同平台不同OS版本都去ifelse,是个大苦力活。当然,反过来看,这样也很好保留了本身的控件特性。

总结来说:如果ReactNative和Weex是运行时将jsview转为nativeview去渲染,那么uts+uvue就是编译时把uts转化为kotlinview和swiftview去打包。

在我理解上,一家商业公司做这个,我觉得除非完全开源(不是半开源),然后基于社区大量投入去做运营,不然单靠内部开发去推进这件事情进度会很慢,因为这个项目的实现逻辑注定了它需要大量的适配工作,类似Flutter,而Flutter大量的bugfix和适配都来自社区的pr,很多问题都是依靠社区贡献去修复。

当然,就像官方说的,如果你觉得uni-app已经性能够用了,那其实完全不必考虑uni-appx,而就像大家说的,我都用uni-app了,还考虑什么性能?

最后,其实今天更多是讨论的味道,其实uni-app的用户还是不少,我很好奇,有多少uni-app的用户愿意去使用uni-appx,这只螃蟹未来是否可以在跨平台领域横行?你愿意学习uts和uvue吗?

THE END
1.uniapp介绍,什么是uniapp,它是干嘛的uniapp是什么uni-app 是一个使用Vue.js开发跨平台应用的前端框架。 开发者通过编写 Vue.js 代码,uni-app 将其编译到iOS、Android、微信小程序等多个平台,保证其正确运行并达到优秀体验。 uni-app 继承自 Vue.js,提供了完整的 Vue.js 开发体验。 uni-app组件规范和扩展api与微信小程序基本相同。 https://blog.csdn.net/qq_38085795/article/details/82877700
2.什么是UniApp它和H5+App有什么区别?什么是Uni-App 它和 H5+App 有什么区别? uni-app 是dcloud 2018 下半年推出的一个使用 Vue.js 开发跨平台应用的前端框架,开发者编写一套代码,可编译到iOS、Android、微信小程序等多个平台。uni-app 官网 uni-app 是引用和改造了美团 的mpvue 小程序开发框架项目,mpvue 官方文档https://www.html5-app.com/show/93
3.GitHubdcloudio/uniapp:Across当然也可以在已经做好的原生App中将部分页面改为uni-app实现; 此外,我们会把很多跨端处理放在编译期完成的,这样会减少对运行期的效率影响。 问:不做多端,是不是不需要uni-app? 答:不是。大量开发者用uni-app只做一个端,详见案例。对于开发者而言,一个优秀工具在手,做什么都不愁。https://github.com/dcloudio/uni-app
4.Uni样式适配:不同平台的样式表现可能有差异,使用 uni-app-plus 插件中的 upx2px 方法来进行样式适配,使得在不同平台上显示一致。 原生扩展:使用原生插件和扩展来调用设备的原生功能和第三方 SDK,以解决特定平台的需求。 6.uniApp中如何进行页面跳转? 可以使用uni.navigateTo、uni.redirectTo和uni.reLaunch等方法进行页面http://xiahunao.cn/news/2793871.html
5.uniapp是做什么的uniappuniapp是做什么的 uniapp 是一款跨平台移动应用程序开发框架,可使用一套代码为 ios、android、h5、微信小程序和支付宝小程序等平台构建应用程序。其优势包括:跨平台开发,节省时间和成本原生渲染,提供媲美原生应用的用户体验丰富的组件库和强大插件支持快速迭代和多端联调,缩短开发周期活跃社区提供技术支持https://m.php.cn/faq/732227.html
6.uniapp是什么?uni-app 是 IDE 的跨平台开发扩展功能,支持在阿里云小程序开发者工具中将 uni-app 工程编译为微信小程序,并同时打开微信开发者工具。 uni-app是什么? uni-app是IDE的跨平台开发扩展功能,支持在阿里云小程序开发者工具中将 uni-app 工程编译为微信小程序,并同时打开微信开发者工具。 https://www.yimenapp.com/kb-yimen/13937/
7.uniapp是什么意思uni-app(uni,读you ni,是统一的意思)是一个使用Vue.js开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序、快应用等多个平台。关于uniapp的具体内容我们将在文章中展开。 uni-app 介绍 uni-app 是一个使用 Vue.js 开发跨平台应用的前端框架。 https://worktile.com/blog/know-753/amp/
8.什么是uni什么是uni-app? uni-app是目前APP开发中比较常见的一种APP前端开发框架,由于能够同时编译成多个平台的应用程序,深受当下需要开发APP用户的热衷,下面南昌APP开发公司百恒科技小编来跟大家简单聊一下什么是uni-app。 1、uni-app是由DCloud公司开发的一个跨平台应用程序开发框架,uni-app具有跨平台性,它支持iOS、Androidhttp://www.nczwz.com/article/2030.html
9.uniapp是什么?XiaoNiuFeiTianuniapp是什么? uniapp是基于Vue的一个组件集。主要用于移动端 简介:uniapp是Dcloud公司的产品,是一个跨端开发框架,基于vue.js技术栈。开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉/淘宝)、快应用等多个平台。这是它的功能架构图,可以看下,了解下它https://www.cnblogs.com/2008nmj/p/15271836.html
10.uniapp和原生APP的区别是什么,哪种更好UniApp和原生APP都是移动应用开发技术,它们之间的主要区别如下: 1. 开发方式:UniApp是基于Vue.js开发的跨平台框架,可以使用一套代码同时编译成多个平台的应用程序;而原生APP则是针对特定平台,比如在iOS上使用Swift或Objective-C,在Android上使用Java或Kotlin(具体可以查看:APP是用什么语言开发的一文)。 https://www.jxbh.cn/article/2550.html
11.什么是Uniappreact,有什么特点?聚名资讯什么是Uniapp、react,有什么特点? 关于uniapp的相关介绍 uni-app 是一个使用 Vue.js 开发小程序、H5、App的统一前端框架。官网地址:https://uniapp.dcloud.io,开发者使用 Vue 语法编写代码,uni-app 框架将其编译到 小程序(微信/支付宝/百度/字节跳动/QQ/钉钉)、App(iOS/Android)、H5等多个平台,保证其正确https://www.juming.com/zx/18094.html
12.uniapp的定义和特点uni-app是一款基于Vue.js框架开发的跨平台开发工具,它可以用于快速构建同时运行在多个平台(包括iOS、Android、Web以及小程序)的应用程序。uni-app实现了一套代码,多端运行的目标,通过一套代码编写,可以生成多个平台的应用程序,开发者无需针对不同平台进行独立开发,极大地提高了开发效率。 https://m.nowcoder.com/feed/main/detail/f9e270fce54c4266ba4d9c37fca36854
13.什么是uniapp,为什么使用uniapp?uniapp是基于vue的跨平台开发框架,它可以让开发者使用vue语法开发一次代码,同时将应用发送到多个平台。包括IOS,Android,web,小程序等。uniapp的目的是通过使用尽可能少的代码开发出高性能原生体验的应用。 优势: 跨平台:一端开发多端使用 基于vue:uniapp支持vue,学习成本低,开发效率高 https://www.jianshu.com/p/39be1b6d8189
14.uniapp是什么?优势和略势有哪些?uni-app是一款跨平台开发框架,可以快速地开发出微信小程序、H5、App 等多个平台的应用。uni-app 的特点是开发效率高、代码复用率高、跨平台性能好,能够帮助开发者快速地开发出高质量的应用。 UNI-APP是什么? uni-app的出现很大程度上解决了跨平台开发的难题。通常情况下,开发者需要根据不同平台的特性和要求,编写https://www.infocode.com.cn/blog/18967.html
15.Uniapp是什么?Uniapp跨平台开发框架的优势和应用嘲深度解读Uniapp还可以用来快速地开发出 跨平台的社交类、新闻类应用。让用户在不同平台交流和浏览新闻 二 OpenCart移动跨平台APP是什么? OpenCart 移动跨平台 APP ,是一款基于 Uniapp 开发框架的,移动端多平台同步开发的电商建站解决方案。 开发者通过一套代码编译到多个平台,实现跨平台应用的快速开发和部署。 https://www.guangdawangluo.com/articles/325
16.uniapp入门教程PDF下载Java知识分享网口中选择“uni-app 项目”,然后按照提示填写项目名称和项目路径,最后点击“创建” 即可。 三、项目结构 创建完项目后,你会看到如下的项目结构: * pages:用于存放页面文件,每个页面都是一个单独的文件夹,文件夹名称就是页面 的名称。 * static:用于存放静态资源,如图片、字体等。 * App.vue:应用的主组件,所有http://www.java1234.com/a/javabook/javabase/2024/0424/25183.html
17.uView2.0全面兼容nvue的uniapp生态框架uni涵盖uniapp各个方面,给开发者方向指导和设计理念,让您茅塞顿开,一马平川 组件 众多组件覆盖开发过程的各个需求,组件功能丰富,多端兼容。让您快速集成,开箱即用 工具库 众多的贴心小工具,是您开发过程中召之即来的利器,让您飞镖在手,百步穿杨 布局 https://uviewui.com/