为人方正实诚
为人方正实诚
  • 发布:2023-03-18 09:35
  • 更新:2023-07-25 11:59
  • 阅读:3821

uniapp中的UTS后续是不是就是uvue页面,相比nvue性能是否有所提升,原有的nvue页面改成UTS工作量大不大

分类:uni-app

uniapp中的UTS后续是不是就是uvue页面,相比nvue页面性能是否有所提升,如果性能提升很大,原有的nvue页面改成UTS工作量大不大?主要需要改动哪些东西?是否支持.nvue+.vue+.uvue(UTS)三种类型的页面混着写,如果能 那能像nvue页面和vue页面之间那样,三个类型的页面相互传值和通讯吗?

2023-03-18 09:35 负责人:无 分享
已邀请:
118

118

这已经不是修改的问题了,算直接重写了。UTS就像是个翻译器,帮你翻译成原生。和nvue一毛关系都没有,nvue就是个半成品,官方早已放弃,注定是要被淘汰的。但uts目前也不是很成熟,如果你纯app重构,可以换新的技术栈。

  • Javim

    uts暂时无法抹平多端语法,不好用,还有很长的路要走

    2023-04-07 09:21

DCloud_heavensoft

DCloud_heavensoft

有uvue的版本,不会同时支持nvue。这2个没有并存的必要。
uvue的template部分不变,还是vue的组件;script部分改成了uts,你目前的逻辑如果是ts写的,改动量会很低,如果是js写的,那就是相当于把js改成ts的工作量;style部分,和nvue的css基本一致,是原生渲染的css,比web的css少一些。

uvue是纯原生,没有js引擎了。nvue只是渲染层是原生,逻辑层是在js里,并且目前nvue的主要瓶颈是逻辑层和渲染层的通信阻塞。

你的nvue如果满足你的需求了,那就不需要改。其实大部分应用,如果代码优化的好,nvue已经足够。只是个别比较酷炫的效果,nvue在低端机上的流畅度不如原生。uvue承载了更大的远景,我们期待依靠uvue拿到top app市场。

虽然uvue还没有正式对外发,但我们的内部版本已经可以跑这个例子,写法是这样的,可以参考:https://gitcode.net/dcloud/hello-uni-app-x

  • Javim

    uts要是能抹平多端的api,不需要每个端写一套,才是真正的强大!加油!或许可以参考flutter的渲染机制,那就毫无破绽了!

    2023-04-07 09:24

  • 118

    用过flutter,效果非常非常流畅,在低端安卓上也堪比原生, 反观nuiapp的项目在安卓上,就感觉很卡,特别是动画效果,卡成ppt, 我感觉 hx,应该拥抱flutter,把Dc的SDK移植到flutter中。 当然uvue在小程序方面是很方便,但在app的性能表现很一般,这是事实。

    2023-04-07 12:15

  • DCloud_heavensoft

    回复 SunMo: uvue还没发布,你说的是vue吧

    2023-04-07 22:02

  • wfvue

    uvue 大概什么时候发布呢?想用uvue 重构一下app

    2023-04-10 13:55

  • 程序朱

    回复 DCloud_heavensoft: 请问uvue大概什么时候发布,下半年有望吗?

    2023-04-11 00:05

  • DCloud_heavensoft

    回复 程序朱: 上半年会发

    2023-04-11 00:37

  • 2***@qq.com

    回复 DCloud_heavensoft: 期待啊,听起来可以媲美dart的样子

    2023-04-12 11:20

  • Azikou

    回复 DCloud_heavensoft: uvue在图表重绘方面性能会加强嘛。我现在的项目都是物联网方面的,需求是1ms绘制一个点位,,当点位突破3000后 就会卡顿了,6000后就会很卡。

    2023-04-12 14:28

  • 1***@qq.com

    期待ing

    2023-05-31 11:45

  • h***@qq.com

    回复 DCloud_heavensoft: 现在7月份了,已经发布了吗?好像没找到呀

    2023-07-07 22:05

  • DCloud_heavensoft

    回复 Azikou: 你这个需求,用现在的vue,renderjs里操作canvas,应该也是没问题的。

    2023-07-07 23:52

  • DCloud_heavensoft

    回复 h***@qq.com: 还没,见回答的新编辑

    2023-07-07 23:52

  • chunge404

    看这个示例,很多基础组件已经在跑了呢,像list这种常用,而又复杂的列表组件,功能会一步到位吗?比如吸顶、左右滑动的下划线跟随(类似蚯蚓导航那样)

    2023-07-11 13:00

  • DCloud_heavensoft

    回复 chunge404: 吸顶一期就会有。下划线跟随,开发者自己监听touch做就可以了,新版渲染引擎没有性能问题。另外这些都和list这个组件无关

    2023-07-12 03:59

  • chunge404

    回复 DCloud_heavensoft: 很期待上线,目前这个nvue在list列表问题实在是多,有时候渲染图片还会出现移位的情况,下滑的时候,吸顶会停顿在导航栏那,用着没有那么顺畅,左右滑动的算法也比较复杂,导致算法一多,性能就差了,根本搞不了复杂的列表功能。上线有时间表没,这个月有戏吗?

    2023-07-12 09:16

  • chunge404

    回复 DCloud_heavensoft: 我看过安卓原生,下划线跟随(类似蚯蚓导航那样),有现成的库,是不是直接整合进去就可以了?

    2023-07-12 09:19

  • Azikou

    回复 DCloud_heavensoft: 现在就是这么做的,会有个1s左右的绘制过程,,我用qt写的话,是打开页面就能显示了。

    2023-07-16 08:12

  • DCloud_heavensoft

    回复 chunge404: 下划线跟随,监听touch事件,用transition动画设线条的宽度就行。届时可以给个示例。不需要引原生库。nvue渲染图片移位的问题,单独开贴给一个重现测试例。

    2023-07-16 19:15

  • DCloud_heavensoft

    回复 Azikou: 我不确认你这个例子会怎么样,一期没有canvas。除了canvas,其他界面元素渲染性能都和原生Android意义。另外1ms绘制一次没啥意义,人眼没这么快,16ms已经不得了了

    2023-07-16 19:18

  • chunge404

    回复 DCloud_heavensoft: 现在不理那个nvue了,没有继续为他修复bug的必要了啊,加快uvue上线,这才是未来最重要的,这个月出来有戏吗?

    2023-07-16 23:06

  • chunge404

    回复 DCloud_heavensoft: 我说的蚯蚓导航,类似这种效果,https://blog.csdn.net/u014608640/article/details/87344382 ,不仅仅是一个滑动跟随,下划线先是到达下一个标签,然后在缩短的过程。

    2023-07-16 23:13

  • 橘子水

    回复 DCloud_heavensoft: 你好,我也很期待uvue的发布,现在首页用nvue还是不理想,请问uvue支持热更新吗?

    2023-07-17 10:42

  • Azikou

    回复 DCloud_heavensoft: 我的意思是1ms一个点位,然后一次会有30秒的数据,想一次性渲染就会很慢。

    2023-07-17 13:28

  • chunge404

    回复 2***@qq.com: nvue小问题很多的,吸顶就不流畅,上拉加载的时候,也会出现一些莫名其妙的卡住,总之一点都不好用。现在项目就等着uvue发布,来重构首页,这也不知道要等啥时候。

    2023-07-17 14:05

  • DCloud_heavensoft

    回复 2***@qq.com: uvue不支持热更新

    2023-07-17 14:09

  • 橘子水

    回复 DCloud_heavensoft: uvue里video 比nvue里面的好用吗?使用nvue的video 播放m3u8格式视频时,快进会加载5秒,并且从选中点+5s开始播放,只能选用web-view嵌套h5播放视频

    2023-07-17 14:26

  • bctop

    已经迫不及die了!!!快让我 试试有什么bug。就指望这个最终的解决方案了。不想再在跨平台这个坑里,到处看方案了

    2023-07-25 15:55

  • bctop

    回复 bctop: 不支持热更新的话,那开发流程不是,前期单独写每个页面和页面功能。后期对接接口,也是每个页面单独对接。在最终开发前,拼接到一起!!我早些年也挺疑惑 原生安卓开发和 ios 开发,没有热更新 怎么个开发流程。后面想了想,估计 那也就是写一个功能,点一下编译了。

    2023-07-25 16:56

  • bctop

    回复 bctop: 刚看了下,开源项目,显然目前不支持 vue3的组合式,但我看 store里面 又是pinia的组合式风格,看来是后期支持。还有就是 感觉这里面 还有不少的工作要做。。。

    一是、目前组件的关系 与 原生组件的关系,(如 是否可以使用原生组件的属性或能力)

    二是、组件 与 原生平台三方包的关系。比如可否引入三方包,比如三方canvas库啦,可否用uts无缝接入页面

    3是,css 样式的变化又是基于什么了。

    4是,HBuilderX 的语法提示,难不成要 提示 原生ios 和安卓模块语法了???

    5是,目前 看来大概率不支持 npm 三方模块(比如 dayjs)。。。那 如果不能使用原生相关模块。。。。。


    没有恶意,但现在 uvue 走的是市面上 都没走过的 道路。看了眼,想一想,这工程真的是 十分巨大的了。感觉,这要求前端开发者 为新的 uvue又要做出许多改变了———一如最开始为nvue 放弃的和学习的 一样了。

    2023-07-25 17:11

  • bctop

    回复 bctop: 希望有个好的效果!

    2023-07-25 17:11

  • DCloud_heavensoft

    回复 bctop: 开发期间支持热更新。发布后不支持。基于vue3,但目前还没实现组合api。不支持npm,支持原生仓储,支持uni_modules。css和nvue差不多。HBuilderX早就支持uts里提示原生iOS和Android的api了,目前uts插件就是这么做的。

    2023-07-26 03:56

  • 为人方正实诚 (作者)

    回复 DCloud_heavensoft: 一个纯nvue项目,切换到uvue,改动的工作量大吗?没有UTS(没有原生技术基础)上手难吗

    2023-07-26 17:15

  • DCloud_heavensoft

    回复 为人方正实诚: 不需要原生。懂ts就行。这不有代码吗?https://gitcode.net/dcloud/hello-uni-app-x。就界面而言,迁移工作量不大。只不过初期uni-app x的uni api不全,没实现的uni api,你要用,就得自己写uts原生插件或者找插件作者买

    2023-07-26 18:02

  • bctop

    回复 DCloud_heavensoft: 好的 看到了看到了 大概有数了 。多谢回复。接下来就期待uvue上线了

    2023-07-26 22:15

  • choin

    回复 DCloud_heavensoft: 大概啥时候能上线呀,想新项目用上呢

    2023-08-04 09:48

  • choin

    想问一下,uvue 支持全局组件了吗? 比如可以自己做modal、toast 可以覆盖到任何页面之上

    2023-08-04 10:19

  • choin

    回复 DCloud_heavensoft: /hello-uni-app-x 没有看到瀑布流组件, 会支持吗?

    2023-08-04 10:20

  • 小马路

    回复 DCloud_heavensoft: uvue不是说上半年会发吗,现在都下半年了,进度怎么样了?

    2023-08-26 20:53

1***@qq.com

1***@qq.com

多搞搞nvue可以吗? 什么都是搞一半

要回复问题请先登录注册