注冊

微信小程序內(nèi)容組件rich-text,微信小程序富文本實例

2020-09-27
導(dǎo)讀:rich-text 基礎(chǔ)庫 1.4.0 開始支持,低版本需做兼容處理 富文本。 屬性 類型 默認值 說明 最低版本 nodes Array / String [] 節(jié)點列表 / HTML String 1.4.0 支持默認事件,包括: tap 、 touchstart 、 tou...

rich-text

基礎(chǔ)庫 1.4.0 開始支持,低版本需做兼容處理

富文本。

屬性 類型 默認值 說明 最低版本
nodes Array / String [] 節(jié)點列表 / HTML String 1.4.0

支持默認事件,包括:tap、touchstarttouchmove、touchcanceltouchendlongtap

nodes 屬性推薦使用 Array 類型,由于組件會將 String 類型轉(zhuǎn)換為 Array 類型,因而性能會有所下降

微信小程序內(nèi)容組件rich-text,微信小程序富文本實例

 

nodes

現(xiàn)支持兩種節(jié)點,通過type來區(qū)分,分別是元素節(jié)點和文本節(jié)點,默認是元素節(jié)點,在富文本區(qū)域里顯示的HTML節(jié)點

元素節(jié)點:type = node

屬性 說明 類型 必填 備注
name 標簽名 String 支持部分受信任的HTML節(jié)點
attrs 屬性 Object 支持部分受信任的屬性,遵循Pascal命名法
children 子節(jié)點列表 Array 結(jié)構(gòu)和nodes一致

文本節(jié)點:type = text

屬性 說明 類型 必填 備注
text 文本 String 支持entities

受信任的HTML節(jié)點及屬性

全局支持class和style屬性,不支持id屬性。

節(jié)點 屬性
a  
abbr  
b  
blockquote  
br  
code  
col span,width
colgroup span,width
dd  
del  
div  
dl  
dt  
em  
fieldset  
h1  
h2  
h3  
h4  
h5  
h6  
hr  
i  
img alt,src,height,width
ins  
label  
legend  
li  
ol start,type
p  
q  
span  
strong  
sub  
sup  
table width
tbody  
td colspan,height,rowspan,width
tfoot  
th colspan,height,rowspan,width
thead  
tr  
ul  

示例:

<!-- rich-text.wxml -->
<rich-text nodes="{{nodes}}" bindtap="tap"></rich-text>
// rich-text.js
Page({
  data: {
    nodes: [{
      name: 'div',
      attrs: {
        class: 'div_class',
        style: 'line-height: 60px; color: red;'
      },
      children: [{
        type: 'text',
        text: 'Hello&nbsp;World!'
      }]
    }]
  },
  tap() {
    console.log('tap')
  }
})

Bug & Tip

  1. tip: nodes 不推薦使用 String 類型,性能會有所下降。
  2. tip:rich-text組件內(nèi)屏蔽所有節(jié)點的事件。
  3. tip: attrs 屬性不支持 id ,支持 class 。
  4. tip: name 屬性大小寫不敏感。
  5. tip: 如果使用了不受信任的HTML節(jié)點,該節(jié)點及其所有子節(jié)點將會被移除。
  6. tip: img 標簽僅支持網(wǎng)絡(luò)圖片。
更多微信小程序開發(fā)教程,可以關(guān)注hi小程序。
重磅推薦:小程序開店目錄

第一部分:小商店是什么

第二部分:如何開通一個小商店

第三部分:如何登錄小商店

第四部分:開店任務(wù)常見問題

第五部分:小商店可以賣什么

第六部分:HiShop小程序特色功能

第七部分:小程序直播

第八部分:小程序收貨/物流

第九部分:小程序怎么結(jié)算

第十部分:小程序客服

第十一部分:電商創(chuàng)業(yè)

第十二部分:小程序游戲開發(fā)