You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

5611 lines
192 KiB

<template>
<view>
<!--**
* author: Di (微信小程序开发工程师)
* organization: WeAppDev(微信小程序开发论坛)(http://weappdev.com)
* 垂直微信小程序开发交流社区
*
* github地址: https://github.com/icindy/wxParse
*
* for: 微信小程序富文本解析
* detail : http://weappdev.com/t/wxparse-alpha0-1-html-markdown/184
*/-->
<!--基础元素-->
<template name="wxParseImg">
<image :class="item.classStr + ' wxParse-' + item.tag" :data-from="item.from" :data-src="item.attr.src" :data-idx="item.imgIndex" :src="item.attr.src" mode="aspectFit" @load="wxParseImgLoad" @tap="wxParseImgTap" :style="'width:' + item.width + 'px;'"></image>
</template>
<template name="WxEmojiView">
<view class="WxEmojiView wxParse-inline" :style="item.styleStr">
<block v-for="(item, index) in item.textArray" :key="index">
<block :class="item.text == '\\n' ? 'wxParse-hide':''" v-if="item.node == 'text'">{{item.text}}</block>
<block v-else-if="item.node == 'element'">
<image class="wxEmoji" :src="item.baseSrc + '' + item.text"></image>
</block>
</block>
</view>
</template>
<template name="WxParseBr">
<text>\n</text>
</template>
<!--入口模版-->
<template name="wxParse">
<block v-for="(item, index) in wxParseData" :key="index">
<block data-type="template" data-is="wxParse0" data-attr="item">
<!--<template is="wxParse1" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse1" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse1" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse1" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'table'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse1" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse1" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse1" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</template>
<!--循环模版-->
<template name="wxParse0">
<!--<template is="wxParse1" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse1" data-attr="item">
<!--<template is="wxParse2" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<block data-type="template" data-is="wxParseVideo" data-attr="item">
<!--增加video标签支持,并循环添加-->
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<video :class="item.classStr + ' wxParse-' + item.tag + '-video'" :src="item.attr.src"></video>
</view>
</block>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<block data-type="template" data-is="wxParseImg" data-attr="item">
<image :class="item.classStr + ' wxParse-' + item.tag" :data-from="item.from" :data-src="item.attr.src" :data-idx="item.imgIndex" :src="item.attr.src" mode="aspectFit" @load="wxParseImgLoad" @tap="wxParseImgTap" :style="'width:' + item.width + 'px'"></image>
</block>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse1" data-attr="item">
<!--<template is="wxParse2" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<block data-type="template" data-is="wxParseVideo" data-attr="item">
<!--增加video标签支持,并循环添加-->
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<video :class="item.classStr + ' wxParse-' + item.tag + '-video'" :src="item.attr.src"></video>
</view>
</block>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<block data-type="template" data-is="wxParseImg" data-attr="item">
<image :class="item.classStr + ' wxParse-' + item.tag" :data-from="item.from" :data-src="item.attr.src" :data-idx="item.imgIndex" :src="item.attr.src" mode="aspectFit" @load="wxParseImgLoad" @tap="wxParseImgTap" :style="'width:' + item.width + 'px'"></image>
</block>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse1" data-attr="item">
<!--<template is="wxParse2" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<block v-else-if="item.tag == 'table'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse1" data-attr="item">
<!--<template is="wxParse2" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse1" data-attr="item">
<!--<template is="wxParse2" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse1" data-attr="item">
<!--<template is="wxParse2" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse2" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</template>
<!--循环模版-->
<template name="wxParse1">
<!--<template is="wxParse2" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse2" data-attr="item">
<!--<template is="wxParse3" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<block data-type="template" data-is="wxParseVideo" data-attr="item">
<!--增加video标签支持,并循环添加-->
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<video :class="item.classStr + ' wxParse-' + item.tag + '-video'" :src="item.attr.src"></video>
</view>
</block>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<block data-type="template" data-is="wxParseImg" data-attr="item">
<image :class="item.classStr + ' wxParse-' + item.tag" :data-from="item.from" :data-src="item.attr.src" :data-idx="item.imgIndex" :src="item.attr.src" mode="aspectFit" @load="wxParseImgLoad" @tap="wxParseImgTap" :style="'width:' + item.width + 'px'"></image>
</block>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse2" data-attr="item">
<!--<template is="wxParse3" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<block data-type="template" data-is="wxParseVideo" data-attr="item">
<!--增加video标签支持,并循环添加-->
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<video :class="item.classStr + ' wxParse-' + item.tag + '-video'" :src="item.attr.src"></video>
</view>
</block>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<block data-type="template" data-is="wxParseImg" data-attr="item">
<image :class="item.classStr + ' wxParse-' + item.tag" :data-from="item.from" :data-src="item.attr.src" :data-idx="item.imgIndex" :src="item.attr.src" mode="aspectFit" @load="wxParseImgLoad" @tap="wxParseImgTap" :style="'width:' + item.width + 'px'"></image>
</block>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse2" data-attr="item">
<!--<template is="wxParse3" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse2" data-attr="item">
<!--<template is="wxParse3" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse2" data-attr="item">
<!--<template is="wxParse3" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse3" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</template>
<!--循环模版-->
<template name="wxParse2">
<!--<template is="wxParse3" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse3" data-attr="item">
<!--<template is="wxParse4" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<block data-type="template" data-is="wxParseVideo" data-attr="item">
<!--增加video标签支持,并循环添加-->
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<video :class="item.classStr + ' wxParse-' + item.tag + '-video'" :src="item.attr.src"></video>
</view>
</block>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<block data-type="template" data-is="wxParseImg" data-attr="item">
<image :class="item.classStr + ' wxParse-' + item.tag" :data-from="item.from" :data-src="item.attr.src" :data-idx="item.imgIndex" :src="item.attr.src" mode="aspectFit" @load="wxParseImgLoad" @tap="wxParseImgTap" :style="'width:' + item.width + 'px'"></image>
</block>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse3" data-attr="item">
<!--<template is="wxParse4" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<block data-type="template" data-is="wxParseVideo" data-attr="item">
<!--增加video标签支持,并循环添加-->
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<video :class="item.classStr + ' wxParse-' + item.tag + '-video'" :src="item.attr.src"></video>
</view>
</block>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<block data-type="template" data-is="wxParseImg" data-attr="item">
<image :class="item.classStr + ' wxParse-' + item.tag" :data-from="item.from" :data-src="item.attr.src" :data-idx="item.imgIndex" :src="item.attr.src" mode="aspectFit" @load="wxParseImgLoad" @tap="wxParseImgTap" :style="'width:' + item.width + 'px'"></image>
</block>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse3" data-attr="item">
<!--<template is="wxParse4" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse3" data-attr="item">
<!--<template is="wxParse4" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse3" data-attr="item">
<!--<template is="wxParse4" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse4" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</template>
<!--循环模版-->
<template name="wxParse3">
<!--<template is="wxParse4" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse4" data-attr="item">
<!--<template is="wxParse5" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<block data-type="template" data-is="wxParseVideo" data-attr="item">
<!--增加video标签支持,并循环添加-->
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<video :class="item.classStr + ' wxParse-' + item.tag + '-video'" :src="item.attr.src"></video>
</view>
</block>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<block data-type="template" data-is="wxParseImg" data-attr="item">
<image :class="item.classStr + ' wxParse-' + item.tag" :data-from="item.from" :data-src="item.attr.src" :data-idx="item.imgIndex" :src="item.attr.src" mode="aspectFit" @load="wxParseImgLoad" @tap="wxParseImgTap" :style="'width:' + item.width + 'px'"></image>
</block>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse4" data-attr="item">
<!--<template is="wxParse5" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<block data-type="template" data-is="wxParseVideo" data-attr="item">
<!--增加video标签支持,并循环添加-->
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<video :class="item.classStr + ' wxParse-' + item.tag + '-video'" :src="item.attr.src"></video>
</view>
</block>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<block data-type="template" data-is="wxParseImg" data-attr="item">
<image :class="item.classStr + ' wxParse-' + item.tag" :data-from="item.from" :data-src="item.attr.src" :data-idx="item.imgIndex" :src="item.attr.src" mode="aspectFit" @load="wxParseImgLoad" @tap="wxParseImgTap" :style="'width:' + item.width + 'px'"></image>
</block>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse4" data-attr="item">
<!--<template is="wxParse5" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse4" data-attr="item">
<!--<template is="wxParse5" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse4" data-attr="item">
<!--<template is="wxParse5" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse5" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</template>
<!--循环模版-->
<template name="wxParse4">
<!--<template is="wxParse5" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse5" data-attr="item">
<!--<template is="wxParse6" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<block data-type="template" data-is="wxParseVideo" data-attr="item">
<!--增加video标签支持,并循环添加-->
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<video :class="item.classStr + ' wxParse-' + item.tag + '-video'" :src="item.attr.src"></video>
</view>
</block>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<block data-type="template" data-is="wxParseImg" data-attr="item">
<image :class="item.classStr + ' wxParse-' + item.tag" :data-from="item.from" :data-src="item.attr.src" :data-idx="item.imgIndex" :src="item.attr.src" mode="aspectFit" @load="wxParseImgLoad" @tap="wxParseImgTap" :style="'width:' + item.width + 'px'"></image>
</block>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse5" data-attr="item">
<!--<template is="wxParse6" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<block data-type="template" data-is="wxParseVideo" data-attr="item">
<!--增加video标签支持,并循环添加-->
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<video :class="item.classStr + ' wxParse-' + item.tag + '-video'" :src="item.attr.src"></video>
</view>
</block>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<block data-type="template" data-is="wxParseImg" data-attr="item">
<image :class="item.classStr + ' wxParse-' + item.tag" :data-from="item.from" :data-src="item.attr.src" :data-idx="item.imgIndex" :src="item.attr.src" mode="aspectFit" @load="wxParseImgLoad" @tap="wxParseImgTap" :style="'width:' + item.width + 'px'"></image>
</block>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse5" data-attr="item">
<!--<template is="wxParse6" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse5" data-attr="item">
<!--<template is="wxParse6" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse5" data-attr="item">
<!--<template is="wxParse6" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse6" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</template>
<!--循环模版-->
<template name="wxParse5">
<!--<template is="wxParse6" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse6" data-attr="item">
<!--<template is="wxParse7" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<block data-type="template" data-is="wxParseVideo" data-attr="item">
<!--增加video标签支持,并循环添加-->
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<video :class="item.classStr + ' wxParse-' + item.tag + '-video'" :src="item.attr.src"></video>
</view>
</block>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<block data-type="template" data-is="wxParseImg" data-attr="item">
<image :class="item.classStr + ' wxParse-' + item.tag" :data-from="item.from" :data-src="item.attr.src" :data-idx="item.imgIndex" :src="item.attr.src" mode="aspectFit" @load="wxParseImgLoad" @tap="wxParseImgTap" :style="'width:' + item.width + 'px'"></image>
</block>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse6" data-attr="item">
<!--<template is="wxParse7" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<block data-type="template" data-is="wxParseVideo" data-attr="item">
<!--增加video标签支持,并循环添加-->
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<video :class="item.classStr + ' wxParse-' + item.tag + '-video'" :src="item.attr.src"></video>
</view>
</block>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<block data-type="template" data-is="wxParseImg" data-attr="item">
<image :class="item.classStr + ' wxParse-' + item.tag" :data-from="item.from" :data-src="item.attr.src" :data-idx="item.imgIndex" :src="item.attr.src" mode="aspectFit" @load="wxParseImgLoad" @tap="wxParseImgTap" :style="'width:' + item.width + 'px'"></image>
</block>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse6" data-attr="item">
<!--<template is="wxParse7" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse6" data-attr="item">
<!--<template is="wxParse7" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse6" data-attr="item">
<!--<template is="wxParse7" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse7" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</template>
<!--循环模版-->
<template name="wxParse6">
<!--<template is="wxParse7" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse7" data-attr="item">
<!--<template is="wxParse8" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse7" data-attr="item">
<!--<template is="wxParse8" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse7" data-attr="item">
<!--<template is="wxParse8" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse7" data-attr="item">
<!--<template is="wxParse8" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse7" data-attr="item">
<!--<template is="wxParse8" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse8" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</template>
<!--循环模版-->
<template name="wxParse7">
<!--<template is="wxParse8" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse8" data-attr="item">
<!--<template is="wxParse9" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse8" data-attr="item">
<!--<template is="wxParse9" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse8" data-attr="item">
<!--<template is="wxParse9" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse8" data-attr="item">
<!--<template is="wxParse9" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse8" data-attr="item">
<!--<template is="wxParse9" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse9" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</template>
<!--循环模版-->
<template name="wxParse8">
<!--<template is="wxParse9" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse9" data-attr="item">
<!--<template is="wxParse10" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse9" data-attr="item">
<!--<template is="wxParse10" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse9" data-attr="item">
<!--<template is="wxParse10" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse9" data-attr="item">
<!--<template is="wxParse10" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse9" data-attr="item">
<!--<template is="wxParse10" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse10" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</template>
<!--循环模版-->
<template name="wxParse9">
<!--<template is="wxParse10" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse10" data-attr="item">
<!--<template is="wxParse11" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse10" data-attr="item">
<!--<template is="wxParse11" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse10" data-attr="item">
<!--<template is="wxParse11" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse10" data-attr="item">
<!--<template is="wxParse11" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse10" data-attr="item">
<!--<template is="wxParse11" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse11" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</template>
<!--循环模版-->
<template name="wxParse10">
<!--<template is="wxParse11" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse11" data-attr="item">
<!--<template is="wxParse12" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse11" data-attr="item">
<!--<template is="wxParse12" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse11" data-attr="item">
<!--<template is="wxParse12" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse11" data-attr="item">
<!--<template is="wxParse12" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<block data-type="template" data-is="wxParse11" data-attr="item">
<!--<template is="wxParse12" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
<template is="wxParse12" :data="item"></template>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</block>
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</template>
<!--循环模版-->
<template name="wxParse11">
<!--<template is="wxParse12" data="{{item}}" />-->
<!--判断是否是标签节点-->
<block v-if="item.node == 'element'">
<block v-if="item.tag == 'button'">
<button type="default" size="mini">
<block v-for="(item, index) in item.nodes" :key="index">
</block>
</button>
</block>
<!--li类型-->
<block v-else-if="item.tag == 'li'">
<view :class="item.classStr + ' wxParse-li'" :style="item.styleStr">
<view :class="item.classStr + ' wxParse-li-inner'">
<view :class="item.classStr + ' wxParse-li-text'">
<view :class="item.classStr + ' wxParse-li-circle'"></view>
</view>
<view :class="item.classStr + ' wxParse-li-text'">
<block v-for="(item, index) in item.nodes" :key="index">
</block>
</view>
</view>
</view>
</block>
<!--video类型-->
<block v-else-if="item.tag == 'video'">
<template is="wxParseVideo" :data="item"></template>
</block>
<!--img类型-->
<block v-else-if="item.tag == 'img'">
<template is="wxParseImg" :data="item"></template>
</block>
<!--a类型-->
<block v-else-if="item.tag == 'a'">
<view @tap="wxParseTagATap" :class="'wxParse-inline ' + item.classStr + ' wxParse-' + item.tag" :data-src="item.attr.href" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
</block>
</view>
</block>
<block v-else-if="item.tag == 'br'">
<template is="WxParseBr"></template>
</block>
<!--其他块级标签-->
<block v-else-if="item.tagType == 'block'">
<view :class="item.classStr + ' wxParse-' + item.tag" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
</block>
</view>
</block>
<!--内联标签-->
<view v-else :class="item.classStr + ' wxParse-' + item.tag + ' wxParse-' + item.tagType" :style="item.styleStr">
<block v-for="(item, index) in item.nodes" :key="index">
</block>
</view>
</block>
<!--判断是否是文本节点-->
<block v-else-if="item.node == 'text'">
<!--如果是,直接进行-->
<template is="WxEmojiView" :data="item"></template>
</block>
</template>
</view>
</template>
<script>
/**
* author: Di (微信小程序开发工程师)
* organization: WeAppDev(微信小程序开发论坛)(http://weappdev.com)
* 垂直微信小程序开发交流社区
*
* github地址: https://github.com/icindy/wxParse
*
* for: 微信小程序富文本解析
* detail : http://weappdev.com/t/wxparse-alpha0-1-html-markdown/184
*/
/**
* utils函数引入
**/
import showdown from './showdown.js';
import HtmlToJson from './html2json.js';
/**
* 配置及公有属性
**/
var realWindowWidth = 0;
var realWindowHeight = 0;
uni.getSystemInfo({
success: function (res) {
realWindowWidth = res.windowWidth;
realWindowHeight = res.windowHeight;
}
});
/**
* 主函数入口区
**/
function wxParse(bindName = 'wxParseData', type = 'html', data = '<div class="color:red;">数据不能为空</div>', target, imagePadding) {
var that = target;
var transData = {}; //存放转化后的数据
if (type == 'html') {
transData = HtmlToJson.html2json(data, bindName);
console.log(JSON.stringify(transData, ' ', ' '));
} else if (type == 'md' || type == 'markdown') {
var converter = new showdown.Converter();
var html = converter.makeHtml(data);
transData = HtmlToJson.html2json(html, bindName);
console.log(JSON.stringify(transData, ' ', ' '));
}
transData.view = {};
transData.view.imagePadding = 0;
if (typeof imagePadding != 'undefined') {
transData.view.imagePadding = imagePadding;
}
var bindData = {};
bindData[bindName] = transData;
that.setData(bindData);
that.wxParseImgLoad = wxParseImgLoad;
that.wxParseImgTap = wxParseImgTap;
} // 图片点击事件
function wxParseImgTap(e) {
var that = this;
var nowImgUrl = e.target.dataset.src;
var tagFrom = e.target.dataset.from;
if (typeof tagFrom != 'undefined' && tagFrom.length > 0) {
uni.previewImage({
current: nowImgUrl,
// 当前显示图片的http链接
urls: that.data[tagFrom].imageUrls // 需要预览的图片http链接列表
});
}
}
/**
* 图片视觉宽高计算函数区
**/
function wxParseImgLoad(e) {
var that = this;
var tagFrom = e.target.dataset.from;
var idx = e.target.dataset.idx;
if (typeof tagFrom != 'undefined' && tagFrom.length > 0) {
calMoreImageInfo(e, idx, that, tagFrom);
}
} // 假循环获取计算图片视觉最佳宽高
function calMoreImageInfo(e, idx, that, bindName) {
var temData = that.data[bindName];
if (!temData || temData.images.length == 0) {
return;
}
var temImages = temData.images; //因为无法获取view宽度 需要自定义padding进行计算,稍后处理
var recal = wxAutoImageCal(e.detail.width, e.detail.height, that, bindName); // temImages[idx].width = recal.imageWidth;
// temImages[idx].height = recal.imageheight;
// temData.images = temImages;
// var bindData = {};
// bindData[bindName] = temData;
// that.setData(bindData);
var index = temImages[idx].index;
var key = `${bindName}`;
for (var i of index.split('.')) key += `.nodes[${i}]`;
var keyW = key + '.width';
var keyH = key + '.height';
that.setData({
[keyW]: recal.imageWidth,
[keyH]: recal.imageheight
});
} // 计算视觉优先的图片宽高
function wxAutoImageCal(originalWidth, originalHeight, that, bindName) {
//获取图片的原始长宽
var windowWidth = 0,
windowHeight = 0;
var autoWidth = 0,
autoHeight = 0;
var results = {};
var padding = that.data[bindName].view.imagePadding;
windowWidth = realWindowWidth - 2 * padding;
windowHeight = realWindowHeight; //判断按照那种方式进行缩放
// console.log("windowWidth" + windowWidth);
if (originalWidth > windowWidth) {
//在图片width大于手机屏幕width时候
autoWidth = windowWidth; // console.log("autoWidth" + autoWidth);
autoHeight = autoWidth * originalHeight / originalWidth; // console.log("autoHeight" + autoHeight);
results.imageWidth = autoWidth;
results.imageheight = autoHeight;
} else {
//否则展示原来的数据
results.imageWidth = originalWidth;
results.imageheight = originalHeight;
}
return results;
}
function wxParseTemArray(temArrayName, bindNameReg, total, that) {
var array = [];
var temData = that.data;
var obj = null;
for (var i = 0; i < total; i++) {
var simArr = temData[bindNameReg + i].nodes;
array.push(simArr);
}
temArrayName = temArrayName || 'wxParseTemArray';
obj = JSON.parse('{"' + temArrayName + '":""}');
obj[temArrayName] = array;
that.setData(obj);
}
/**
* 配置emojis
*
*/
function emojisInit(reg = '', baseSrc = "/wxParse/emojis/", emojis) {
HtmlToJson.emojisInit(reg, baseSrc, emojis);
}
module.exports = {
wxParse: wxParse,
wxParseTemArray: wxParseTemArray,
emojisInit: emojisInit
};
</script>
<style>
/**
* author: Di (微信小程序开发工程师)
* organization: WeAppDev(微信小程序开发论坛)(http://weappdev.com)
* 垂直微信小程序开发交流社区
*
* github地址: https://github.com/icindy/wxParse
*
* for: 微信小程序富文本解析
* detail : http://weappdev.com/t/wxparse-alpha0-1-html-markdown/184
*/
.wxParse{
margin: 0 5px;
font-family: Helvetica,sans-serif;
font-size: 28rpx;
color: #666;
line-height: 1.8;
}
view{
word-break:break-all;
/* overflow:auto; */
}
.wxParse-inline{
display: inline;
margin: 0;
padding: 0;
}
/*//标题 */
.wxParse-div{margin: 0;padding: 0;}
.wxParse-h1{ font-size:2em; margin: .67em 0 }
.wxParse-h2{ font-size:1.5em; margin: .75em 0 }
.wxParse-h3{ font-size:1.17em; margin: .83em 0 }
.wxParse-h4{ margin: 1.12em 0}
.wxParse-h5 { font-size:.83em; margin: 1.5em 0 }
.wxParse-h6{ font-size:.75em; margin: 1.67em 0 }
.wxParse-h1 {
font-size: 18px;
font-weight: 400;
margin-bottom: .9em;
}
.wxParse-h2 {
font-size: 16px;
font-weight: 400;
margin-bottom: .34em;
}
.wxParse-h3 {
font-weight: 400;
font-size: 15px;
margin-bottom: .34em;
}
.wxParse-h4 {
font-weight: 400;
font-size: 14px;
margin-bottom: .24em;
}
.wxParse-h5 {
font-weight: 400;
font-size: 13px;
margin-bottom: .14em;
}
.wxParse-h6 {
font-weight: 400;
font-size: 12px;
margin-bottom: .04em;
}
.wxParse-h1, .wxParse-h2, .wxParse-h3, .wxParse-h4, .wxParse-h5, .wxParse-h6, .wxParse-b, .wxParse-strong { font-weight: bolder }
.wxParse-i,.wxParse-cite,.wxParse-em,.wxParse-var,.wxParse-address{font-style:italic}
.wxParse-pre,.wxParse-tt,.wxParse-code,.wxParse-kbd,.wxParse-samp{font-family:monospace}
.wxParse-pre{white-space:pre}
.wxParse-big{font-size:1.17em}
.wxParse-small,.wxParse-sub,.wxParse-sup{font-size:.83em}
.wxParse-sub{vertical-align:sub}
.wxParse-sup{vertical-align:super}
.wxParse-s,.wxParse-strike,.wxParse-del{text-decoration:line-through}
/*wxparse-自定义个性化的css样式*/
/*增加video的css样式*/
.wxParse-strong,.wxParse-s{display: inline}
.wxParse-a{
color: deepskyblue;
word-break:break-all;
overflow:auto;
}
.wxParse-video{
text-align: center;
margin: 10px 0;
}
.wxParse-video-video{
width:100%;
}
.wxParse-img{
/*background-color: #efefef;*/
overflow: hidden;
}
.wxParse-blockquote {
margin: 0;
padding:10px 0 10px 5px;
font-family:Courier, Calibri,"宋体";
background:#f5f5f5;
border-left: 3px solid #dbdbdb;
}
.wxParse-code,.wxParse-wxxxcode-style{
display: inline;
background:#f5f5f5;
}
.wxParse-ul{
margin: 20rpx 10rpx;
}
.wxParse-li,.wxParse-li-inner{
display: flex;
align-items: baseline;
margin: 10rpx 0;
}
.wxParse-li-text{
align-items: center;
line-height: 20px;
}
.wxParse-li-circle{
display: inline-flex;
width: 5px;
height: 5px;
background-color: #333;
margin-right: 5px;
}
.wxParse-li-square{
display: inline-flex;
width: 10rpx;
height: 10rpx;
background-color: #333;
margin-right: 5px;
}
.wxParse-li-ring{
display: inline-flex;
width: 10rpx;
height: 10rpx;
border: 2rpx solid #333;
border-radius: 50%;
background-color: #fff;
margin-right: 5px;
}
/*.wxParse-table{
width: 100%;
height: 400px;
}
.wxParse-thead,.wxParse-tfoot,.wxParse-tr{
display: flex;
flex-direction: row;
}
.wxParse-th,.wxParse-td{
display: flex;
width: 580px;
overflow: auto;
}*/
.wxParse-u {
text-decoration: underline;
}
.wxParse-hide{
display: none;
}
.WxEmojiView{
align-items: center;
}
.wxEmoji{
width: 16px;
height:16px;
}
.wxParse-tr{
display: flex;
border-right:1px solid #e0e0e0;
border-bottom:1px solid #e0e0e0;
border-top:1px solid #e0e0e0;
}
.wxParse-th,
.wxParse-td{
flex:1;
padding:5px;
font-size:28rpx;
border-left:1px solid #e0e0e0;
word-break: break-all;
}
.wxParse-td:last{
border-top:1px solid #e0e0e0;
}
.wxParse-th{
background:#f0f0f0;
border-top:1px solid #e0e0e0;
}
.wxParse-del{
display: inline;
}
.wxParse-figure {
overflow: hidden;
}
</style>