亚洲欧美国产日韩综合一卡_人成在线精品日韩_国产成人av在线播放不卡_小仙女导航精品导航_日本最新色网网址_中文無碼久久亞洲_蜜臀av午夜在线_精品三級內地國產在線觀看_狼人色精品视频给你_日朝在线黄色视频

小程序開(kāi)發(fā)使用什么ui框架(小程序開(kāi)發(fā)框架選擇wepy還是mpvue)

小程序開(kāi)發(fā) 3569
本篇文章給大家談?wù)勑〕绦蜷_(kāi)發(fā)使用什么ui框架,以及小程序開(kāi)發(fā)框架選擇wepy還是mpvue對(duì)應(yīng)的知識(shí)點(diǎn),希望對(duì)各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、Taro 3.3 alpha 發(fā)布:用 ant-design 開(kāi)發(fā)小程序?

本篇文章給大家談?wù)勑〕绦蜷_(kāi)發(fā)使用什么ui框架,以及小程序開(kāi)發(fā)框架選擇wepy還是mpvue對(duì)應(yīng)的知識(shí)點(diǎn),希望對(duì)各位有所幫助,不要忘了收藏本站喔。

本文目錄一覽:

Taro 3.3 alpha 發(fā)布:用 ant-design 開(kāi)發(fā)小程序?

小程序的設(shè)計(jì)并沒(méi)有完全遵循 Web 規(guī)范,導(dǎo)致小程序生態(tài)和傳統(tǒng) Web 開(kāi)發(fā)生態(tài)之間的割裂,海量?jī)?yōu)秀的 Web 物料并不能直接用于小程序開(kāi)發(fā)。因而 Taro 在相當(dāng)一段時(shí)間內(nèi)生態(tài)都相對(duì)薄弱,UI 框架選擇不多的問(wèn)題更是深深困擾著開(kāi)發(fā)者。

另一方面,業(yè)界有著存量的 H5 應(yīng)用,中短期內(nèi) H5 應(yīng)用適配到小程序端的需要還會(huì)存在。我們希望能減少 H5 應(yīng)用遷移到小程序端的成本,甚至能夠直接運(yùn)行在小程序端。

Taro 團(tuán)隊(duì)一直在思考如何最大限度地在小程序環(huán)境中復(fù)用 Web 生態(tài),直到 Taro 3.0 誕生后,這種想法有了落地的可能。下文將介紹基于 Taro 3.0 實(shí)現(xiàn) H5 同構(gòu)的思路與問(wèn)題,以及我們嘗試適配了三大移動(dòng)端 UI 框架 WEUI 、 Ant Design Mobile 、 VantUI 的實(shí)驗(yàn)結(jié)果。

Taro 3.0 是一款重運(yùn)行時(shí)的跨端框架,它通過(guò)模擬實(shí)現(xiàn)瀏覽器的 BOM 和 DOM API 實(shí)現(xiàn)了對(duì) React、Vue 等 Web 開(kāi)發(fā)框架的兼容。

既然已經(jīng)有了瀏覽器環(huán)境的 BOM 和 DOM API,Taro 應(yīng)用和 Web 應(yīng)用之間的鴻溝在于小程序組件和 HTML 標(biāo)簽之間的差異。

Taro3 的渲染數(shù)據(jù)流如下:

前端框架 - Taro DOM - 小程序 data

HTML 標(biāo)簽和小程序組件的標(biāo)簽名、屬性、事件是有差異的,而前端框架無(wú)需感知這些差異。

因此前端框架適配層、Taro DOM 層不需要改動(dòng),只要在 Taro DOM 序列化為小程序 data 這一步作映射即可。

HTML 標(biāo)簽相對(duì)小程序組件封裝程度更低、功能更簡(jiǎn)單,可以看作是小程序組件的子集。因此可以按一定的規(guī)則,把 HTML 標(biāo)簽映射為小程序組件,如:

完整的標(biāo)簽名映射規(guī)則請(qǐng)看: RFC 附錄一

如果 HTML 標(biāo)簽的屬性能在對(duì)應(yīng)小程序組件的屬性上找到對(duì)應(yīng),則進(jìn)行映射,如:

完整的屬性名映射規(guī)則請(qǐng)看: RFC 附錄二

把 HTML 特有的事件在小程序端找到相似的事件進(jìn)行映射,如:

完整的事件映射規(guī)則請(qǐng)看: RFC 附錄三

前文介紹了我們會(huì)把 HTML 標(biāo)簽映射為小程序組件,但是 H5 應(yīng)用中使用到的 CSS 標(biāo)簽選擇器就會(huì)失效。

因此 Taro 使用了類名去進(jìn)行模擬:

Taro 提供兩種內(nèi)置的瀏覽器默認(rèn)樣式,可以直接引入生效:

理想很美好,但現(xiàn)實(shí)卻略顯骨感。即使 Taro 能實(shí)現(xiàn) BOM、DOM API,支持使用 HTML 標(biāo)簽等,同構(gòu)方案還是存在著一些框架層面抹平不了的差異。以下列舉出若干主要限制:

在 H5 中我們可以調(diào)用 DOM API 同步獲取元素的尺寸:

但是在小程序中,獲取元素尺寸的 API 是異步的:

因此不能兼容那些使用了同步 DOM API 去獲取元素尺寸的組件。

canvas 、 video 、 audio 等標(biāo)簽在 H5 端可以直接調(diào)用 HTMLElement 上的方法:

但是在 Taro 中,要調(diào)用組件上的原生方法,必須先創(chuàng)建對(duì)應(yīng)的 Context :

部分樣式或 CSS 選擇器在小程序中不支持,如:

首先需要安裝 v3.3 的 CLI 工具:

然后進(jìn)入項(xiàng)目,把 package.json 文件中 taro 相關(guān)依賴的版本修改為 ^3.3.0-alpha.2 ,再重新安裝依賴(建議先把 node_modules 文件夾刪除)。

為了節(jié)省項(xiàng)目空間,同構(gòu)功能是可選的,以 Taro 插件的形式提供。

首先開(kāi)發(fā)者需要安裝插件 @tarojs/plugin-html :

然后配置使用此插件:

為了驗(yàn)證同構(gòu)功能的可用性和效果,我們對(duì) CSS 樣式庫(kù) WEUI 、React 組件庫(kù) Antd Design Mobile 、Vue2 組件庫(kù) VantUI 的所有組件進(jìn)行了測(cè)試。

測(cè)試效果比較理想,甚至稍微超出我們的預(yù)期,配合各組件庫(kù)自身的按需加載能力,能以小巧的體積使用豐富的組件,相信各位開(kāi)發(fā)者會(huì)喜歡這個(gè)功能。

倉(cāng)庫(kù)地址: taro-weui

WEUI 是一個(gè) CSS 的樣式庫(kù),與框架無(wú)關(guān),兼容性比較高,大部分組件能直接使用。

倉(cāng)庫(kù)地址: taro-antd-mobile

能直接兼容使用的組件大概為 80%,主要問(wèn)題在于:

倉(cāng)庫(kù)地址: taro-vant

VantUI 的組件十分豐富,能直接兼容使用的組件大概為 70%。部分開(kāi)發(fā)者會(huì)在 Taro 中配合使用 Vant Weapp,但 Vant Weapp 只能運(yùn)行在微信小程序,因此對(duì) VantUI 的直接適配是一個(gè)很好的補(bǔ)充。

適配過(guò)程主要遇到的問(wèn)題有:

同構(gòu)方案還在持續(xù)優(yōu)化中,部分實(shí)現(xiàn)還沒(méi)有最終定稿。歡迎各位開(kāi)發(fā)者到我們的論壇下留言,提出您的寶貴意見(jiàn)~: 同構(gòu)方案 RFC 。

歡迎關(guān)注凹凸實(shí)驗(yàn)室

肯德基微信小程序用什么開(kāi)發(fā)的

肯德基微信小程序用什么開(kāi)發(fā)的

肯德基微信小程序是使用微信小程序開(kāi)發(fā)框架(微信小程序SDK)開(kāi)發(fā)的,它是一套基于微信官方提供的API接口的框架,其中包括前端框架、UI組件庫(kù)、JavaScript SDK、小程序管理后臺(tái)等,幫助開(kāi)發(fā)者快速構(gòu)建小程序。

基于uniapp開(kāi)發(fā)的UI框架有哪些?

1、如果是uni-app那就選uview( 完美,好用 ),兼顧滿足小程序、APP、H5等。2、如果是 Angular 那就選 Ionic (一對(duì)好 CP)。3、如果是 Vue 那就選 Vux (基于 WeUI)4、如果是 jQuery 那就選 Framework7 (iOS 和 Android 雙皮膚)。謝謝你,如果你有這方面的問(wèn)題的話,您可以隨時(shí)詢問(wèn)我

小程序開(kāi)發(fā)用什么框架

小程序的開(kāi)發(fā)都是通過(guò)各自的開(kāi)發(fā)工具進(jìn)行開(kāi)發(fā),有它獨(dú)有的語(yǔ)法規(guī)則。沒(méi)有什么框架,不過(guò)可以使用ui框架來(lái)改變頁(yè)面樣式 例如:Mintui Wux WeApp iView WeApp

關(guān)于小程序開(kāi)發(fā)使用什么ui框架和小程序開(kāi)發(fā)框架選擇wepy還是mpvue的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

掃碼二維碼