微信小程序富文本渲染引擎的詳解

微信小程序富文本渲染引擎的詳解

創(chuàng)新互聯(lián)建站為客戶提供專業(yè)的網(wǎng)站設(shè)計、網(wǎng)站建設(shè)、程序、域名、空間一條龍服務(wù),提供基于WEB的系統(tǒng)開發(fā). 服務(wù)項目涵蓋了網(wǎng)頁設(shè)計、網(wǎng)站程序開發(fā)、WEB系統(tǒng)開發(fā)、微信二次開發(fā)、成都做手機網(wǎng)站等網(wǎng)站方面業(yè)務(wù)。

步驟

  • 把 wxParser 目錄放到小程序項目的根目錄下
  • 在需要富文本解析的 WXML 內(nèi)引入 wxParser/index.wxml
  • 在頁面 JS 文件內(nèi)使用 wxParser.parse(options) 方法解析 HTML 內(nèi)容
  • 在小程序項目根目錄的 app.wxss 內(nèi)引入 wxParser 的默認樣式庫

wxParser.parse(options) 方法的 options 參數(shù)說明

參數(shù)名類型必填描述
bindString要綁定的數(shù)據(jù)名稱
htmlStringHTML 內(nèi)容
targetObject綁定數(shù)據(jù)的模塊對象
enablePreviewImageBoolean是否啟用富文本內(nèi)的圖片預(yù)覽功能,默認是
tapLinkFunction點擊超鏈接時的回調(diào)函數(shù)

示例

WXML:在需要用到富文本解析的文件夾下的 WXML 中引入 wxParser/index.wxml

// 將 WXML 引入需要富文本解析的文件下
<import src="../../wxParser/index.wxml"/>
<view class="wxParser">
 <template is="wxParser" data="{{wxParserData:richText.nodes}}"/>
</view>

JS:在需要用到富文本解析的文件夾下的 JS 中引入 wxParser 渲染引擎

// 在
const wxParser = require('../../wxParser/index');

Page({
 data: {},
 onLoad: function () {
  let that = this;
  let html = `<div >hello, wxParser!</div>`;

  wxParser.parse({
   bind: 'richText',
   html: html,
   target: that,
   enablePreviewImage: false, // 禁用圖片預(yù)覽功能
   tapLink: (url) => { // 點擊超鏈接時的回調(diào)函數(shù)
    // url 就是 HTML 富文本中 a 標簽的 href 屬性值
    // 這里可以自定義點擊事件邏輯,比如頁面跳轉(zhuǎn)
    wx.navigateTo({
     url
    });
   }
  });

 }
})

WXSS:在根目錄的 app.wxss 內(nèi)引入 wxParser 的默認樣式庫

@import '../wxParser/index.wxss'

注意

  • JS 中的 richText 可以自定義,但是必須要與 WXML 中的 richText 對應(yīng)
  • 推薦把 template 放到 <view class="wxParser"></view> 內(nèi)部,這樣可以受 wxParser 控制并具有 wxParser 的一些默認樣式
  • 不建議直接修改 wxParser 的默認樣式(因為內(nèi)容庫樣式會有定期更新),應(yīng)該新增一個樣式補丁文件用來自定義樣式

如有疑問請留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

網(wǎng)頁名稱:微信小程序富文本渲染引擎的詳解
本文鏈接:http://www.muchs.cn/article30/ghpdso.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計、外貿(mào)網(wǎng)站建設(shè)企業(yè)建站、網(wǎng)站設(shè)計、商城網(wǎng)站ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營