uni-app 是一个使用 Vue.js 开发跨平台应用的前端框架,开发者编写一套代码,可编译到iOS、Android、H五、小程序等多个平台。css
今天有空就来介绍一下uni-app这个可以跨平台开发,而且一套代码能够适配多端的开发方案。uni-app是dcloud公司推出的,旨在解决如今前端开发的诸多矛盾。好比多端泛滥、其余跨平台体验不佳以及推出力度不够,社区不健全等。前端
如今的前端工程师,已经今非昔比,会一些css和js已经很难知足如今的市场需求了。数据库、操做系统、微信小程序、app开发以及数据结构和算法都已然成了前端的标配技术,相信身为前端工程师的你已经深有体会。我写这篇博客的初衷就是基于前不久公司接的新项目,公司的需求很简单,就是用当前仅有的人手短期来编写出同时知足android和微信小程序的代码。时间紧任务重。在通过了一段时间的技术选型以后,定格到了uni-app这个框架,vue
若是你也遇到了像我同样的需求或者愿意接受一些新的东西能够进一步了解uni-app,接下来我来简要说说uni-app的特色。android
uni-app语言结合了vue和微信小程序的语言特色,首先它是使用了vue的框架,在template中更像是微信小程序的语言,若是已经掌握了这两个前端通用技术栈,那么能够很平滑的学习uni-app来开发。算法
先来一张图来看看uni-app文件内架构变化数据库
由于须要多端支持,因此浏览器专用的window、document、navigator、location对象,只有在h5中才有效,app和小程序都不支持。uni-app的生命周期既包含了vue的生命周期也包含小程序的生命周期。小程序
因为每一个平台有本身的一些特性,所以会存在一些没法跨平台的状况。在C语言中,经过 #ifdef、#ifndef 的方式,为 windows、mac 等不一样 os 编译不一样的代码。 uni-app 参考这个思路,为 uni-app 提供了条件编译手段,在一个工程里优雅的完成了平台个性化实现。windows
示例,以下代码仅在 5+App 下出现:微信小程序
示例,以下代码不会在 H5 平台上出现:浏览器
HbuilderX几近完美的支持uni-app框架,若是你想使用此框架,那么不妨下载一个HbuilderX
最后说到uni-app的社区,因为uni-app还比较新,社区还不是特别大,可是社区和插件市场仍是比较踊跃的,相信这么好的东西在不久以后用的人会更多!
原创博客:转载请注明vue加载优化策略