国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁(yè) 微信小程式 微信開(kāi)發(fā) 微信小程式 WXML、WXSS 和JS介紹及詳解

微信小程式 WXML、WXSS 和JS介紹及詳解

Dec 29, 2016 am 09:33 AM

前幾天折騰了下。然後列出一些實(shí)驗(yàn)結(jié)果,供大家參考。

0. 使用開(kāi)發(fā)工具模擬的和真機(jī)差異還是比較大的。也建議大家還是真機(jī)調(diào)試比較可靠。

1. WXML(HTML)

1.1 小程式的WXML沒(méi)有HTML的寬容度那麼高,單標(biāo)籤必需是 /> 結(jié)尾的。不然會(huì)報(bào)錯(cuò)。

1.2 官方建議使用的基礎(chǔ)標(biāo)籤是區(qū)塊標(biāo)籤,給了作為文字標(biāo)籤,但是使用其他標(biāo)籤例如div也是可以使用的,並且都是inline標(biāo)籤。而且wxml的parser會(huì)把標(biāo)籤上的不在白名單上的屬性都去掉,class, id, data 這些應(yīng)該都在白名單內(nèi),但是href什麼的是不會(huì)有的,所以如果你用傳統(tǒng)的html的標(biāo)籤建立頁(yè)面理論上也是可行的,不過(guò)這些都是inline標(biāo)籤,需要自行設(shè)定display。

1.3 scroll-view 的scroll-top, scroll-left 是可以修改scroll-view的滾動(dòng)位置的。但使用者自己滾動(dòng)了之後小程式並不會(huì)去改變 scroll-top, scroll-left 的賦值(並不是雙向同步的)。如果這時(shí)使用setData去修改的話,scroll-top, scroll-left 的賦值和上一次的值相同,小程式是不會(huì)運(yùn)用這個(gè)修改的,所以表現(xiàn)就是設(shè)定沒(méi)有生效。這時(shí)只能先設(shè)定一個(gè)其他值,再設(shè)定回去(這裡還可以體現(xiàn)setData方法是同步的)。 scroll-view 取得scroll位置,只能透過(guò)bindscroll的回呼函數(shù)取得,所以需要取scroll位置的請(qǐng)自行預(yù)存好。 scroll-view 還是有webview的scroll 的臭毛病,在居頂位置如果第一個(gè)動(dòng)作是向下滾動(dòng)的,會(huì)導(dǎo)致之後手怎麼滑都滾不動(dòng),設(shè)置scroll-top 不為0,設(shè)個(gè)1就好了。

1.4 input 目前只支援文字居左,其他都是不行的(模擬器可以)。如果你做表單,建議把input等表單元素都放在form中,from觸發(fā)submit時(shí)會(huì)回傳內(nèi)部所有表單元素的name-value。不然只能綁定所有表單元素的 change 事情來(lái)獲取,甚是麻煩。

1.5 只有? checkbox-group 有 change 事件,單一的checkbox是沒(méi)有的,如果你只有一個(gè)checkbox, 覺(jué)得外面套一個(gè)checkbox-group麻煩又不美觀的話,可以用 switch type="checkbox" 代替。 (微信小程式應(yīng)用程式應(yīng)用程式號(hào)交流群 563752274)

1.6 map 組成目前直接在app第一個(gè)頁(yè)面載入會(huì)出現(xiàn)載入失敗。需要在onLoad之後再加在??梢韵葁x:if="false" 然後onLoad的之後改成 true 就行了。

1.7 map, canvas 像在webview上面蓋一個(gè)native組件的感覺(jué)。它們是沒(méi)辦法被overflow 以及 上面蓋元素的,你可以認(rèn)為z-index寫多高都沒(méi)辦法在他上面。所以不建議在頁(yè)面上做彈層和蒙層。 canvas 無(wú)法放在scroll-view中滾動(dòng)會(huì)定位在初始位置,如果你給canvas設(shè)定背景顏色的話,你會(huì)發(fā)現(xiàn)背景色塊跟著滾了,圖沒(méi)滾。

2. WXSS(CSS)

2.1 WXSS 和 CSS很像,基本上所有的CSS都支持,小程式也提供了 rpx 這個(gè)單位。一螢?zāi)粚捠?50rpx。推薦使用這個(gè)來(lái)作為佈局。不過(guò)有一些細(xì)小的差異我下面會(huì)列出

2.2 WXSS不支援 大括號(hào)嵌套({{}} )。所以key-frames,CSS animation 就不可用了,不過(guò)transition 是可用的。

2.3 目前測(cè)試引入字體也是不可用的,前面WXML中提到的內(nèi)容看SVG也是沒(méi)辦法使用的。所以icon目前只能用圖的方式做了。

2.4 WXSS中是不能引入本地資源的, 只能使用線上資源(模擬器是可以,但是別信),可以使用base64。 (微信小程式應(yīng)用號(hào)交流群 563752274)

2.5 WXSS的 rule 是不支援集聯(lián)的。所以不能 body .main {background:#000;} 這麼寫。所以寫起來(lái)還是比較費(fèi)勁的。每個(gè)class都得很長(zhǎng),不然怕重名。不過(guò)支援 li.current {color: red;} 這樣的寫法,支援a(chǎn)fter, before偽類,但不支援 first-child last-child nth-child 這類偽類。

2.6 app.wxss 和每個(gè) page 的wxss 的覆蓋關(guān)係是: 如果有同名 rule 的話,page 會(huì)覆蓋 app 的,不是merge是覆蓋。

3. JS

3.1 JS 的運(yùn)作環(huán)境和view的運(yùn)作環(huán)境是隔離的。 JS只能透過(guò)事件取得時(shí)機(jī)和setData方法修改資料來(lái)改變view。

3.2 JS 目前有個(gè)很大的問(wèn)題是無(wú)法獲取到頁(yè)面px級(jí)的寬度高度, 所有事件回調(diào)的單位都是px級(jí)的而不是rpx的,但是又不知道當(dāng)前rpx,px的轉(zhuǎn)換關(guān)係。例如過(guò)你用canvas畫圖。你都不知道邊界在哪裡,這個(gè)很痛。

3.3 上面有說(shuō)過(guò) setData方法如果上一個(gè)值和下一個(gè)值相同時(shí),是不會(huì)觸發(fā)view修改的(見(jiàn)1.3)

3.4 使用 navigate 跳轉(zhuǎn)的時(shí)候可以使用queryString的方式跟在相對(duì)位址上,onLoad事件會(huì)在入?yún)⒅袀魅耄〞?huì)轉(zhuǎn)換成object),但是 navigate back的時(shí)候沒(méi)有一個(gè)官方給出的資料通訊機(jī)制??梢允褂胓etApp() 取得到全域?qū)ο?,給上面加點(diǎn)東西,自行實(shí)作。 navigate 最多5個(gè)什麼的就不說(shuō)了。

3.5 canvas getActions被呼叫之後,actions是會(huì)被清空的。即連續(xù)呼叫兩次getActions,第二次是空數(shù)組。

3.6 開(kāi)發(fā)者工具是nw寫的,我就看了看裙底的源碼,開(kāi)發(fā)者工具中WXML確實(shí)是有parser再拼裝的過(guò)程的。但並不能說(shuō)明小工具是native的,從css的支援力度到webview的一些bug相似度來(lái)看,我還是覺(jué)得像webview,但是元件比如map,canvas什麼的用的是原生view,然後蓋在webview上的感覺(jué)。但不管怎麼說(shuō) auto-focus 能自動(dòng)呼出鍵盤就已經(jīng)是個(gè)很大的好評(píng)了。

感謝閱讀,希望能幫助大家,謝謝大家對(duì)本站的支持!

更多微信小程式 WXML、WXSS 和JS介紹及詳解相關(guān)文章請(qǐng)關(guān)注PHP中文網(wǎng)!


本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願(yuàn)投稿,版權(quán)歸原作者所有。本站不承擔(dān)相應(yīng)的法律責(zé)任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請(qǐng)聯(lián)絡(luò)admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動(dòng)的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強(qiáng)大的PHP整合開(kāi)發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級(jí)程式碼編輯軟體(SublimeText3)