又爽又高潮的BB视频免费看,久久99精品久久久久子伦,男女性杂交内射女BBWXZ,新激情五月天

18842388900

網(wǎng)站建設(shè) APP開發(fā) 小程序

Article/文章

記錄成長點滴 分享您我感悟

您當(dāng)前位置>首頁 > 知識 > 軟件開發(fā)

微信小程序如何渲染html內(nèi)容(示例講解)

發(fā)表時間:2019-05-20 08:50:03

文章來源:沈陽網(wǎng)站建設(shè)

標(biāo)簽:小程序 wepy

分享:

瀏覽次數(shù):0

本篇文章給大家?guī)淼膬?nèi)容是關(guān)于微信小程序如何渲染html內(nèi)容(示例講解),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

最近又做了一個新的小程序關(guān)于物流訂單查詢

遇到了一個小問題:數(shù)據(jù)中返回電話號碼的字符串識別出來并且高亮和可以綁定事件。比如數(shù)據(jù)中包含您的派送員黃xx正在派件,電話:137xxxx41460已經(jīng)在派送。其中就要識別出137xxxx41460并且綁定點擊事件可以點擊撥打電話號碼。

對于這個功能搜集了不少資料其中包含了3個解決方案但是各有優(yōu)缺點因此記錄下來

wxParse
小程序剛上線那會兒,是無法直接渲染HTML內(nèi)容的,于是就誕生了一個叫做「 wxParse 」的庫。它的原理就是把HTML代碼解析成樹結(jié)構(gòu)的數(shù)據(jù),再通過小程序的模板把該數(shù)據(jù)渲染出來。

rich-text
后來,小程序增加了「rich-text」組件用于展示富文本內(nèi)容。然而,這個組件存在一個極大的限制: 組件內(nèi)屏蔽了所有節(jié)點的事件 。也就是說,在該組件內(nèi),連「預(yù)覽圖片」這樣一個簡單的功能都無法實現(xiàn)。

web-view
再后來,小程序允許通過「web-view」組件嵌套網(wǎng)頁,通過網(wǎng)頁展示HTML內(nèi)容是兼容性最好的解決方案了。然而,因為要多加載一個頁面,性能是較差的,個人小程序也是沒法用webview。

因為我這個只是需求只是需要識別出來電話號碼并且不是那種復(fù)雜的字符模板。因此參考wxparse 的原理自己寫了一個關(guān)于電話號碼識別的功能。

效果如下:

1672345876-5c0773766b340_articlex.jpg

技術(shù)重點就是

1、在數(shù)據(jù)返回后對于字符串用正則(/(1+)|(d{9,14})|(d{3,4}-d{6,10})/g)識別出電話號碼存在一個新的字段并且表示為type:phone ,不是電話號碼的字符就放到另外一個字段并且表示為type:text.數(shù)據(jù)結(jié)構(gòu)如圖所示

378127035-5c0773a7686f9_articlex.jpg

2、新建一個關(guān)于字段讀取的模板

<template name="wepyhtml">  <block wx:for="{{wxmlData}}" wx:key="">    <template is="wxml" data="{{item}}"></template>  </block></template><template name="wxml">  <block wx:if="{{item.type == 'phone'}}" wx:key="">    <text class="blue" bindtap="tapTel" data-phone="{{item.acceptStation}}">{{item.acceptStation}}</text>  </block>  <block wx:else>{{item.acceptStation}}</block></template>

其中,在模板里面綁沈陽軟件定制

<a href=http://gz-jiupin.com target=_blank class=infotextkey>沈陽<a href=http://gz-jiupin.com target=_blank class=infotextkey>軟件開發(fā)</a></a>,<a href=http://gz-jiupin.com target=_blank class=infotextkey>沈陽<a href=http://gz-jiupin.com target=_blank class=infotextkey>軟件公司</a></a>

定點擊事件方便后期做邏輯處理還可以綁定不同的參數(shù)方便獲取

3、在需要用到的地方引入模板

  <import src="/components/html.wxml" />     <template is="wepyhtml" data="{{wxmlData:item.nodes}}"></template>

那就滿足現(xiàn)在的功能呢需求了。不用復(fù)雜的插件也比直接引入原生組件來得方便。關(guān)鍵就是思路。。特此記錄

以上就是微信小程序如何渲染html內(nèi)容(示例講解)的詳細(xì)內(nèi)容,更多請關(guān)注沈陽網(wǎng)站建設(shè)其它相關(guān)文章!

小程序,wepy

相關(guān)案例查看更多

人妻无码一区二区三区TV| 92成人午夜福利一区二区| 男女啪啪免费体验区| 国产成人免费无码AV在线播放| gogoWWW人体大胆裸体无遮挡| 精品卡通动漫亚洲AV第一页|