人文艺术 > 会vue再上手uni

会vue再上手uni

2020-10-04 16:33阅读(62)

会vue再上手uni-app难度大吗?:uni-app就是基于vue开发的框架,如果你会vue的话,入门应该是没啥问题,如果上手去做项目的话,还是有些难度的。具:-vue,上手,

1

uni-app就是基于vue开发的框架,如果你会vue的话,入门应该是没啥问题,如果上手去做项目的话,还是有些难度的。具体哪些难度我们得搞清楚uni-app到底是什么。

uni-app是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、H5、以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉)等多个平台

这是官网介绍的原话,咋一听很厉害的样子。发布到多个平台只需要一套代码,这样的话效率高,成本又低。那为何大公司没有采用uni-app进行开发呢?

1.我们先搞懂它为何能跨多个平台

从上图我们可以看出uni-app跨平台的原因了:适配每一个终端!

这就很像是java虚拟机了,不过java虚拟机是程序运行时工作,而uni-app是编译时工作。

可以这样理解,java虚拟机是在程序运行时,进行适配平台,uni-app是在编译时,根据你选择的编译平台进行适配

在编译时解决平台问题,这是目前很多跨平台框架的首选解决方案,即保证效率又方便开发者。

但这种方案也有缺点,如果平台变动或更新,那么有可能导致你app某些功能无法使用,必须等着uni-app维护升级。

这就是uni-app的跨平台原理,现阶段的跨平台方案没有完美的,都是有利有弊。

2.如果会Vue,是不是相当于会uni-app

是的,uni-app开发页面用的就是Vue组件

上图代码是uni-app登陆模版项目里面的,可以看出来,用的就是Vue的template模版开发。

一般不涉及到平台性的组件都是使用Vue开发的,所以如果你项目对跨平台要求不高,而且会Vue的话可以直接上手开发uni-app

哪些组件是涉及到平台性的呢?

比如弹窗,我们用Vue的话一般在template写个dialog,而uni-app可以直接通过uni.showModal实现 弹窗。当然这个例子不太严谨,Vue也能封装一个这样实现。这里主要讲的是跨平台,使用uni-app提供的组件基本不用担心平台适配问题。

为什么会Vue上手uni-app仍然有难度

这里说的难度不是指写代码的难度,代码都是用Vue写的不存在啥难度。

1.难度是对跨平台而言的,你需要懂各平台运行app的原理。

uni-app代码编译打包后,移动端基本是运行在安卓的webview或ios的WKWebView。但是安卓或ios平台为了效率或者安全性,不会去支持H5的一些危险特性或者功能,当然H5是安全的们这里的危险只是安卓和ios认为的。

比如ios的WKWebview,对H5一些新的css不支持或者不会太早的更新适配。

如果你不了解移动端webview的差异性,那么很容易踩雷,而且这些错误都是无法通过debug发现的。

2.uni-app无法适配的工作需要开发者来实现

有些适配工作是uni-app无法通过编译完成的,这就是需要开发者去实现了。

比如开发中,div、ul、li等得改为view,微信的wxcomponet不支持H5等等。

这里就增加了很多的开发成本,很多不支持跨平台的vue组件用不了。

开发久了你可能会有这样的感觉,会Vue开发uni-app比从头学uni-app开发都难!

总结

如果你会Vue,使用uni-app开发的话,上手是比较简单的,但是如果项目涉及到跨平台的话,就得斟酌下了,会有很多坑,一旦影响到业务功能的实现,就得不偿失了。

如果你项目不涉及到移动端,就只在web和小程序上运行的话,可以使用uni-app开发。

都说后端造语言,移动端造系统,web端造框架。但在这个前端大融合的时代,系统框架已分的没那么清楚。

而作为开发者,我们得知道,效率和成本是对立存在的,切勿因此失彼!


我是非著名攻城狮,原创不易,如果我的回答对你所帮助,还请点赞支持!

2

难度不大,基本看看文档即可上手,如果开发过微信小程序,那么API基本一致。


3

不见得操作dom渲染数据就比vue开发效率低,只能说明工程师比较呆。不够灵活,不懂得封装,也不懂得设计模式,纯粹的死写代码。100个dom只会一个一个搞,不设计批量快捷的方式当然效率低。用vue时间久了,只会更呆,用jq或js 久了只会更有水平!

4

基本上区别不大,难度几乎没有,uni-app的开发考虑到微信原生的生命周期

上手很容易 我做了个视频简介,你可以看看

{!-- PGC_VIDEO:{\"status\": 0, \"thumb_height\": 768, \"file_sign\": \"3337a48a12254903d13be6edbc52586b\

5

uni-app最大优点就是跨平台,但想使用好这个特性,那难度不是一般的大。比如你想开启手机录音功能,如果没有现成的js库,或第三方js库不能满足你的需求,那么你只能自己写,所以你仍要会android或iOS的开发,而且你还要精通js及一系列js编译工具。相信我,你填坑的速度绝对没有前端技术发展的快。如果非要写跨平台的app,我还是推荐微信小程序,尽管我一直鄙视腾讯的各种软件,但它仍是目前成本最低的跨平台解决方案。

6

最近在做Uni-App开发,其实挺简单,语法vue,API和组件跟微信小程序差不多

7

每次看到这种问题我都会很恼火,作为一个开发人员,难度大不大的自己不试试怎么会知道。做为一个合格的软件工程师,遇到问题的第一步应该是去问google,问Stack Overflow。

8

上手容易,参照uniapp文档简单,但是有很多坑要踩毕竟

9

小程序的框架开发,还是先会原生了再用

10

不大,会vue半天时间足够上手uniapp了。