From e9cfba144f45d1cbf08661d64059c2c889237851 Mon Sep 17 00:00:00 2001 From: wanganxp Date: Wed, 26 Feb 2020 02:55:56 +0800 Subject: [PATCH] Update ecosystem.md --- docs/ecosystem.md | 39 +++++++++++++++++++++++++++++---------- 1 file changed, 29 insertions(+), 10 deletions(-) diff --git a/docs/ecosystem.md b/docs/ecosystem.md index b58caa0b..c374a29b 100644 --- a/docs/ecosystem.md +++ b/docs/ecosystem.md @@ -1,20 +1,39 @@ -```uni-app``` 积极拥抱前端社区,创建了开放、兼容的生态系统。 +```uni-app``` 积极拥抱社区,创建了开放、兼容的生态系统。 -- [uni-app插件市场](https://ext.dcloud.net.cn),有数千款插件,支持前端组件、js sdk、页面模板、项目模板、原生插件等多种类型,并为插件作者提供了荣誉+经济回报的双激励模式,打造最强大的开放生态。 +- [uni-app插件市场](https://ext.dcloud.net.cn),有数千款插件,支持前端组件、js sdk、页面模板、项目模板、原生插件等多种类型。在生态建设上远远领先于竞品。 -- 兼容微信小程序 JS SDK,丰富的小程序生态内容可直接引入```uni-app```,并且在App侧通用。以前的跨平台开发框架普遍缺少三方SDK,由于大量SDK厂商均原厂维护小程序SDK,使得```uni-app```成为跨平台开发框架里生态最丰富的平台[参考](https://ask.dcloud.net.cn/article/35070) +- 兼容 微信小程序 JS SDK +丰富的小程序生态内容可直接引入```uni-app```,并且在App侧通用。以前的跨平台开发框架普遍缺少三方SDK,由于大量SDK厂商均原厂维护小程序SDK,使得```uni-app```成为跨平台开发框架里生态最丰富的平台[参考](https://ask.dcloud.net.cn/article/35070) -- 兼容微信小程序自定义组件,并且App侧通用,[参考](https://uniapp.dcloud.io/frame?id=小程序组件支持) +- 兼容 微信小程序自定义组件 +小程序自定义组件是一种ui组件,uni-app里可以在App、H5、微信小程序、QQ小程序同时兼容微信小程序自定义组件,[参考](https://uniapp.dcloud.io/frame?id=小程序组件支持) -- 支持 NPM 包管理系统,[参考](https://uniapp.dcloud.io/frame?id=npm%E6%94%AF%E6%8C%81) +- 兼容 NPM 包管理系统 +uni-app完整支持 NPM ,[详见](https://uniapp.dcloud.io/frame?id=npm%E6%94%AF%E6%8C%81) -- 支持 mpvue 项目及组件,全端通用,[参考](https://ask.dcloud.net.cn/article/34945) +- 兼容 mpvue 项目及组件 +mpvue同样基于vue语法,但支持完善度不如`uni-app`,是`uni-app`的子集。mpvue的组件可以在uni-app里直接使用并全端通用。项目代码可以快速移植到uni-app,[参考](https://ask.dcloud.net.cn/article/34945) -- 支持通用 HTML 和 js 库,虽然小程序不支持通用 HTML 和 DOM,但```uni-app```的web-view组件支持load本地 HTML,可以在需要时引入相关库(注意 HTML 的性能不如 vue 页面)。参考[https://uniapp.dcloud.io/component/web-view](https://uniapp.dcloud.io/component/web-view) +- 兼容 weex 插件生态 +uni-app内置了`weex`,`weex`的原生插件或ui库均可使用。注意`weex`的生态不如`uni-app`丰富,一般情况建议使用`uni-app`的插件市场。 -- App端支持和原生混合编码,支持 [Native.js](https://ask.dcloud.net.cn/docs/#//ask.dcloud.net.cn/article/88) 直接调用原生api、支持 [第三方原生sdk](https://ask.dcloud.net.cn/docs/#//ask.dcloud.net.cn/article/104) +- 兼容 普通 web 库 +```uni-app```的H5端支持所有浏览器API。但众所周知,由于小程序的js不运行在浏览器里,所以小程序里不支持 HTML 和 DOM 的 API。 -- App端支持 ```weex``` ,```uni-app``` 内置了 ```weex``` ,并在 ```weex``` 引擎中实现了常用的 uni api 的封装,比如 uni.request 可以在 ```weex``` 引擎中联网。这样的文件后缀名为 nvue。```uni-app```还支持 nvue 和 vue 复用 js 和 css。 +`uni-app`的App端虽然和小程序是相同的架构,逻辑层也运行在独立jscore而不是浏览器里,但一方面可通过web-view组件加载HTML,引入web相关库; +另一方面可通过[renderjs](frame?id=renderjs)实现在渲染层执行js,此时完整echart、threejs等web库均可使用。 +(但为了全端使用,仍然建议减少对dom库的依赖,在uni-app的插件市场可寻找全端可以的库来替代) + +- App端支持各种调用原生能力的方式 +1. 支持 原生[混合开发](hybrid) +2. 支持 比小程序能力更多的[plus JSAPI](http://www.html5plus.org/doc/h5p.html) +3. 支持 [Native.js](https://ask.dcloud.net.cn/docs/#//ask.dcloud.net.cn/article/88) 直接调用原生api +4. 支持 [原生插件扩展](https://ask.dcloud.net.cn/article/35428) +5. 支持 [云打包原生插件](https://ask.dcloud.net.cn/article/35412)。 + +- App端支持双渲染引擎 +`uni-app`逻辑层在独立jscore,而渲染层可选webview渲染和weex引擎渲染。 +1. 使用webview渲染则整个架构与小程序相同,此时页面后缀为vue文件。 +2. 使用weex引擎(经过改造)渲染,则整个架构与快应用相同,此时页面后缀为nvue文件。使用webview渲染时,可以指定由系统webview渲染还是由x5引擎渲染。 -- App端支持原生插件云打包,[参考](https://ask.dcloud.net.cn/article/35412) -- GitLab