aParse.axml 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841
  1. <!--基础元素-->
  2. <template name="aParseVideo">
  3. <!--增加video标签支持,并循环添加-->
  4. <view class="{{item.classStr}} aParse-{{item.tag}}" style="{{item.styleStr}}">
  5. <video class="{{item.classStr}} aParse-{{item.tag}}-video" src="{{item.attr.src}}"></video>
  6. </view>
  7. </template>
  8. <template name="aParseImg">
  9. <image class="{{item.classStr}} aParse-{{item.tag}}" data-from="{{item.from}}" data-src="{{item.attr.src}}" data-idx="{{item.imgIndex}}" src="{{item.attr.src}}" mode="aspectFit" bindload="aParseImgLoad" catchTap="aParseImgTap" mode="widthFix" style="width:{{item.width}}px;" />
  10. </template>
  11. <template name="AEmojiView">
  12. <view class="AEmojiView aParse-inline" style="{{item.styleStr}}">
  13. <block a:for="{{item.textArray}}" a:key="">
  14. <block class="{{item.text == '\\n' ? 'aParse-hide':''}}" a:if="{{item.node == 'text'}}">{{item.text}}</block>
  15. <block a:elif="{{item.node == 'element'}}">
  16. <image class="aEmoji" src="{{item.baseSrc}}{{item.text}}" />
  17. </block>
  18. </block>
  19. </view>
  20. </template>
  21. <template name="AParseBr">
  22. <text>\n</text>
  23. </template>
  24. <!--入口模版-->
  25. <template name="aParse">
  26. <block a:for="{{aParseData}}" a:key="">
  27. <template is="aParse0" data="{{item}}" />
  28. </block>
  29. </template>
  30. <!--循环模版-->
  31. <template name="aParse0">
  32. <!--<template is="aParse1" data="{{item}}" />-->
  33. <!--判断是否是标签节点-->
  34. <block a:if="{{item.node == 'element'}}">
  35. <block a:if="{{item.tag == 'button'}}">
  36. <button type="default" size="mini">
  37. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  38. <template is="aParse1" data="{{item}}" />
  39. </block>
  40. </button>
  41. </block>
  42. <!--li类型-->
  43. <block a:elif="{{item.tag == 'li'}}">
  44. <view class="{{item.classStr}} aParse-li" style="{{item.styleStr}}">
  45. <view class="{{item.classStr}} aParse-li-inner">
  46. <view class="{{item.classStr}} aParse-li-text">
  47. <view class="{{item.classStr}} aParse-li-circle"></view>
  48. </view>
  49. <view class="{{item.classStr}} aParse-li-text">
  50. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  51. <template is="aParse1" data="{{item}}" />
  52. </block>
  53. </view>
  54. </view>
  55. </view>
  56. </block>
  57. <!--video类型-->
  58. <block a:elif="{{item.tag == 'video'}}">
  59. <template is="aParseVideo" data="{{item}}" />
  60. </block>
  61. <!--img类型-->
  62. <block a:elif="{{item.tag == 'img'}}">
  63. <template is="aParseImg" data="{{item}}" />
  64. </block>
  65. <!--a类型-->
  66. <block a:elif="{{item.tag == 'a'}}">
  67. <view bindtap="aParseTagATap" class="aParse-inline {{item.classStr}} aParse-{{item.tag}}" data-src="{{item.attr.href}}" style="{{item.styleStr}}">
  68. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  69. <template is="aParse1" data="{{item}}" />
  70. </block>
  71. </view>
  72. </block>
  73. <block a:elif="{{item.tag == 'table'}}">
  74. <view class="{{item.classStr}} aParse-{{item.tag}}" style="{{item.styleStr}}">
  75. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  76. <template is="aParse1" data="{{item}}" />
  77. </block>
  78. </view>
  79. </block>
  80. <block a:elif="{{item.tag == 'br'}}">
  81. <template is="AParseBr"></template>
  82. </block>
  83. <!--其他块级标签-->
  84. <block a:elif="{{item.tagType == 'block'}}">
  85. <view class="{{item.classStr}} aParse-{{item.tag}}" style="{{item.styleStr}}">
  86. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  87. <template is="aParse1" data="{{item}}" />
  88. </block>
  89. </view>
  90. </block>
  91. <!--内联标签-->
  92. <view a:else class="{{item.classStr}} aParse-{{item.tag}} aParse-{{item.tagType}}" style="{{item.styleStr}}">
  93. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  94. <template is="aParse1" data="{{item}}" />
  95. </block>
  96. </view>
  97. </block>
  98. <!--判断是否是文本节点-->
  99. <block a:elif="{{item.node == 'text'}}">
  100. <!--如果是,直接进行-->
  101. <template is="AEmojiView" data="{{item}}" />
  102. </block>
  103. </template>
  104. <!--循环模版-->
  105. <template name="aParse1">
  106. <!--<template is="aParse2" data="{{item}}" />-->
  107. <!--判断是否是标签节点-->
  108. <block a:if="{{item.node == 'element'}}">
  109. <block a:if="{{item.tag == 'button'}}">
  110. <button type="default" size="mini">
  111. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  112. <template is="aParse2" data="{{item}}" />
  113. </block>
  114. </button>
  115. </block>
  116. <!--li类型-->
  117. <block a:elif="{{item.tag == 'li'}}">
  118. <view class="{{item.classStr}} aParse-li" style="{{item.styleStr}}">
  119. <view class="{{item.classStr}} aParse-li-inner">
  120. <view class="{{item.classStr}} aParse-li-text">
  121. <view class="{{item.classStr}} aParse-li-circle"></view>
  122. </view>
  123. <view class="{{item.classStr}} aParse-li-text">
  124. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  125. <template is="aParse2" data="{{item}}" />
  126. </block>
  127. </view>
  128. </view>
  129. </view>
  130. </block>
  131. <!--video类型-->
  132. <block a:elif="{{item.tag == 'video'}}">
  133. <template is="aParseVideo" data="{{item}}" />
  134. </block>
  135. <!--img类型-->
  136. <block a:elif="{{item.tag == 'img'}}">
  137. <template is="aParseImg" data="{{item}}" />
  138. </block>
  139. <!--a类型-->
  140. <block a:elif="{{item.tag == 'a'}}">
  141. <view bindtap="aParseTagATap" class="aParse-inline {{item.classStr}} aParse-{{item.tag}}" data-src="{{item.attr.href}}" style="{{item.styleStr}}">
  142. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  143. <template is="aParse2" data="{{item}}" />
  144. </block>
  145. </view>
  146. </block>
  147. <block a:elif="{{item.tag == 'br'}}">
  148. <template is="AParseBr"></template>
  149. </block>
  150. <!--其他块级标签-->
  151. <block a:elif="{{item.tagType == 'block'}}">
  152. <view class="{{item.classStr}} aParse-{{item.tag}}" style="{{item.styleStr}}">
  153. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  154. <template is="aParse2" data="{{item}}" />
  155. </block>
  156. </view>
  157. </block>
  158. <!--内联标签-->
  159. <view a:else class="{{item.classStr}} aParse-{{item.tag}} aParse-{{item.tagType}}" style="{{item.styleStr}}">
  160. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  161. <template is="aParse2" data="{{item}}" />
  162. </block>
  163. </view>
  164. </block>
  165. <!--判断是否是文本节点-->
  166. <block a:elif="{{item.node == 'text'}}">
  167. <!--如果是,直接进行-->
  168. <template is="AEmojiView" data="{{item}}" />
  169. </block>
  170. </template>
  171. <!--循环模版-->
  172. <template name="aParse2">
  173. <!--<template is="aParse3" data="{{item}}" />-->
  174. <!--判断是否是标签节点-->
  175. <block a:if="{{item.node == 'element'}}">
  176. <block a:if="{{item.tag == 'button'}}">
  177. <button type="default" size="mini">
  178. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  179. <template is="aParse3" data="{{item}}" />
  180. </block>
  181. </button>
  182. </block>
  183. <!--li类型-->
  184. <block a:elif="{{item.tag == 'li'}}">
  185. <view class="{{item.classStr}} aParse-li" style="{{item.styleStr}}">
  186. <view class="{{item.classStr}} aParse-li-inner">
  187. <view class="{{item.classStr}} aParse-li-text">
  188. <view class="{{item.classStr}} aParse-li-circle"></view>
  189. </view>
  190. <view class="{{item.classStr}} aParse-li-text">
  191. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  192. <template is="aParse3" data="{{item}}" />
  193. </block>
  194. </view>
  195. </view>
  196. </view>
  197. </block>
  198. <!--video类型-->
  199. <block a:elif="{{item.tag == 'video'}}">
  200. <template is="aParseVideo" data="{{item}}" />
  201. </block>
  202. <!--img类型-->
  203. <block a:elif="{{item.tag == 'img'}}">
  204. <template is="aParseImg" data="{{item}}" />
  205. </block>
  206. <!--a类型-->
  207. <block a:elif="{{item.tag == 'a'}}">
  208. <view bindtap="aParseTagATap" class="aParse-inline {{item.classStr}} aParse-{{item.tag}}" data-src="{{item.attr.href}}" style="{{item.styleStr}}">
  209. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  210. <template is="aParse3" data="{{item}}" />
  211. </block>
  212. </view>
  213. </block>
  214. <block a:elif="{{item.tag == 'br'}}">
  215. <template is="AParseBr"></template>
  216. </block>
  217. <!--其他块级标签-->
  218. <block a:elif="{{item.tagType == 'block'}}">
  219. <view class="{{item.classStr}} aParse-{{item.tag}}" style="{{item.styleStr}}">
  220. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  221. <template is="aParse3" data="{{item}}" />
  222. </block>
  223. </view>
  224. </block>
  225. <!--内联标签-->
  226. <view a:else class="{{item.classStr}} aParse-{{item.tag}} aParse-{{item.tagType}}" style="{{item.styleStr}}">
  227. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  228. <template is="aParse3" data="{{item}}" />
  229. </block>
  230. </view>
  231. </block>
  232. <!--判断是否是文本节点-->
  233. <block a:elif="{{item.node == 'text'}}">
  234. <!--如果是,直接进行-->
  235. <template is="AEmojiView" data="{{item}}" />
  236. </block>
  237. </template>
  238. <!--循环模版-->
  239. <template name="aParse3">
  240. <!--<template is="aParse4" data="{{item}}" />-->
  241. <!--判断是否是标签节点-->
  242. <block a:if="{{item.node == 'element'}}">
  243. <block a:if="{{item.tag == 'button'}}">
  244. <button type="default" size="mini">
  245. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  246. <template is="aParse4" data="{{item}}" />
  247. </block>
  248. </button>
  249. </block>
  250. <!--li类型-->
  251. <block a:elif="{{item.tag == 'li'}}">
  252. <view class="{{item.classStr}} aParse-li" style="{{item.styleStr}}">
  253. <view class="{{item.classStr}} aParse-li-inner">
  254. <view class="{{item.classStr}} aParse-li-text">
  255. <view class="{{item.classStr}} aParse-li-circle"></view>
  256. </view>
  257. <view class="{{item.classStr}} aParse-li-text">
  258. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  259. <template is="aParse4" data="{{item}}" />
  260. </block>
  261. </view>
  262. </view>
  263. </view>
  264. </block>
  265. <!--video类型-->
  266. <block a:elif="{{item.tag == 'video'}}">
  267. <template is="aParseVideo" data="{{item}}" />
  268. </block>
  269. <!--img类型-->
  270. <block a:elif="{{item.tag == 'img'}}">
  271. <template is="aParseImg" data="{{item}}" />
  272. </block>
  273. <!--a类型-->
  274. <block a:elif="{{item.tag == 'a'}}">
  275. <view bindtap="aParseTagATap" class="aParse-inline {{item.classStr}} aParse-{{item.tag}}" data-src="{{item.attr.href}}" style="{{item.styleStr}}">
  276. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  277. <template is="aParse4" data="{{item}}" />
  278. </block>
  279. </view>
  280. </block>
  281. <block a:elif="{{item.tag == 'br'}}">
  282. <template is="AParseBr"></template>
  283. </block>
  284. <!--其他块级标签-->
  285. <block a:elif="{{item.tagType == 'block'}}">
  286. <view class="{{item.classStr}} aParse-{{item.tag}}" style="{{item.styleStr}}">
  287. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  288. <template is="aParse4" data="{{item}}" />
  289. </block>
  290. </view>
  291. </block>
  292. <!--内联标签-->
  293. <view a:else class="{{item.classStr}} aParse-{{item.tag}} aParse-{{item.tagType}}" style="{{item.styleStr}}">
  294. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  295. <template is="aParse4" data="{{item}}" />
  296. </block>
  297. </view>
  298. </block>
  299. <!--判断是否是文本节点-->
  300. <block a:elif="{{item.node == 'text'}}">
  301. <!--如果是,直接进行-->
  302. <template is="AEmojiView" data="{{item}}" />
  303. </block>
  304. </template>
  305. <!--循环模版-->
  306. <template name="aParse4">
  307. <!--<template is="aParse5" data="{{item}}" />-->
  308. <!--判断是否是标签节点-->
  309. <block a:if="{{item.node == 'element'}}">
  310. <block a:if="{{item.tag == 'button'}}">
  311. <button type="default" size="mini">
  312. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  313. <template is="aParse5" data="{{item}}" />
  314. </block>
  315. </button>
  316. </block>
  317. <!--li类型-->
  318. <block a:elif="{{item.tag == 'li'}}">
  319. <view class="{{item.classStr}} aParse-li" style="{{item.styleStr}}">
  320. <view class="{{item.classStr}} aParse-li-inner">
  321. <view class="{{item.classStr}} aParse-li-text">
  322. <view class="{{item.classStr}} aParse-li-circle"></view>
  323. </view>
  324. <view class="{{item.classStr}} aParse-li-text">
  325. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  326. <template is="aParse5" data="{{item}}" />
  327. </block>
  328. </view>
  329. </view>
  330. </view>
  331. </block>
  332. <!--video类型-->
  333. <block a:elif="{{item.tag == 'video'}}">
  334. <template is="aParseVideo" data="{{item}}" />
  335. </block>
  336. <!--img类型-->
  337. <block a:elif="{{item.tag == 'img'}}">
  338. <template is="aParseImg" data="{{item}}" />
  339. </block>
  340. <!--a类型-->
  341. <block a:elif="{{item.tag == 'a'}}">
  342. <view bindtap="aParseTagATap" class="aParse-inline {{item.classStr}} aParse-{{item.tag}}" data-src="{{item.attr.href}}" style="{{item.styleStr}}">
  343. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  344. <template is="aParse5" data="{{item}}" />
  345. </block>
  346. </view>
  347. </block>
  348. <block a:elif="{{item.tag == 'br'}}">
  349. <template is="AParseBr"></template>
  350. </block>
  351. <!--其他块级标签-->
  352. <block a:elif="{{item.tagType == 'block'}}">
  353. <view class="{{item.classStr}} aParse-{{item.tag}}" style="{{item.styleStr}}">
  354. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  355. <template is="aParse5" data="{{item}}" />
  356. </block>
  357. </view>
  358. </block>
  359. <!--内联标签-->
  360. <view a:else class="{{item.classStr}} aParse-{{item.tag}} aParse-{{item.tagType}}" style="{{item.styleStr}}">
  361. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  362. <template is="aParse5" data="{{item}}" />
  363. </block>
  364. </view>
  365. </block>
  366. <!--判断是否是文本节点-->
  367. <block a:elif="{{item.node == 'text'}}">
  368. <!--如果是,直接进行-->
  369. <template is="AEmojiView" data="{{item}}" />
  370. </block>
  371. </template>
  372. <!--循环模版-->
  373. <template name="aParse5">
  374. <!--<template is="aParse6" data="{{item}}" />-->
  375. <!--判断是否是标签节点-->
  376. <block a:if="{{item.node == 'element'}}">
  377. <block a:if="{{item.tag == 'button'}}">
  378. <button type="default" size="mini">
  379. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  380. <template is="aParse6" data="{{item}}" />
  381. </block>
  382. </button>
  383. </block>
  384. <!--li类型-->
  385. <block a:elif="{{item.tag == 'li'}}">
  386. <view class="{{item.classStr}} aParse-li" style="{{item.styleStr}}">
  387. <view class="{{item.classStr}} aParse-li-inner">
  388. <view class="{{item.classStr}} aParse-li-text">
  389. <view class="{{item.classStr}} aParse-li-circle"></view>
  390. </view>
  391. <view class="{{item.classStr}} aParse-li-text">
  392. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  393. <template is="aParse6" data="{{item}}" />
  394. </block>
  395. </view>
  396. </view>
  397. </view>
  398. </block>
  399. <!--video类型-->
  400. <block a:elif="{{item.tag == 'video'}}">
  401. <template is="aParseVideo" data="{{item}}" />
  402. </block>
  403. <!--img类型-->
  404. <block a:elif="{{item.tag == 'img'}}">
  405. <template is="aParseImg" data="{{item}}" />
  406. </block>
  407. <!--a类型-->
  408. <block a:elif="{{item.tag == 'a'}}">
  409. <view bindtap="aParseTagATap" class="aParse-inline {{item.classStr}} aParse-{{item.tag}}" data-src="{{item.attr.href}}" style="{{item.styleStr}}">
  410. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  411. <template is="aParse6" data="{{item}}" />
  412. </block>
  413. </view>
  414. </block>
  415. <block a:elif="{{item.tag == 'br'}}">
  416. <template is="AParseBr"></template>
  417. </block>
  418. <!--其他块级标签-->
  419. <block a:elif="{{item.tagType == 'block'}}">
  420. <view class="{{item.classStr}} aParse-{{item.tag}}" style="{{item.styleStr}}">
  421. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  422. <template is="aParse6" data="{{item}}" />
  423. </block>
  424. </view>
  425. </block>
  426. <!--内联标签-->
  427. <view a:else class="{{item.classStr}} aParse-{{item.tag}} aParse-{{item.tagType}}" style="{{item.styleStr}}">
  428. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  429. <template is="aParse6" data="{{item}}" />
  430. </block>
  431. </view>
  432. </block>
  433. <!--判断是否是文本节点-->
  434. <block a:elif="{{item.node == 'text'}}">
  435. <!--如果是,直接进行-->
  436. <template is="AEmojiView" data="{{item}}" />
  437. </block>
  438. </template>
  439. <!--循环模版-->
  440. <template name="aParse6">
  441. <!--<template is="aParse7" data="{{item}}" />-->
  442. <!--判断是否是标签节点-->
  443. <block a:if="{{item.node == 'element'}}">
  444. <block a:if="{{item.tag == 'button'}}">
  445. <button type="default" size="mini">
  446. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  447. <template is="aParse7" data="{{item}}" />
  448. </block>
  449. </button>
  450. </block>
  451. <!--li类型-->
  452. <block a:elif="{{item.tag == 'li'}}">
  453. <view class="{{item.classStr}} aParse-li" style="{{item.styleStr}}">
  454. <view class="{{item.classStr}} aParse-li-inner">
  455. <view class="{{item.classStr}} aParse-li-text">
  456. <view class="{{item.classStr}} aParse-li-circle"></view>
  457. </view>
  458. <view class="{{item.classStr}} aParse-li-text">
  459. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  460. <template is="aParse7" data="{{item}}" />
  461. </block>
  462. </view>
  463. </view>
  464. </view>
  465. </block>
  466. <!--video类型-->
  467. <block a:elif="{{item.tag == 'video'}}">
  468. <template is="aParseVideo" data="{{item}}" />
  469. </block>
  470. <!--img类型-->
  471. <block a:elif="{{item.tag == 'img'}}">
  472. <template is="aParseImg" data="{{item}}" />
  473. </block>
  474. <!--a类型-->
  475. <block a:elif="{{item.tag == 'a'}}">
  476. <view bindtap="aParseTagATap" class="aParse-inline {{item.classStr}} aParse-{{item.tag}}" data-src="{{item.attr.href}}" style="{{item.styleStr}}">
  477. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  478. <template is="aParse7" data="{{item}}" />
  479. </block>
  480. </view>
  481. </block>
  482. <block a:elif="{{item.tag == 'br'}}">
  483. <template is="AParseBr"></template>
  484. </block>
  485. <!--其他块级标签-->
  486. <block a:elif="{{item.tagType == 'block'}}">
  487. <view class="{{item.classStr}} aParse-{{item.tag}}" style="{{item.styleStr}}">
  488. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  489. <template is="aParse7" data="{{item}}" />
  490. </block>
  491. </view>
  492. </block>
  493. <!--内联标签-->
  494. <view a:else class="{{item.classStr}} aParse-{{item.tag}} aParse-{{item.tagType}}" style="{{item.styleStr}}">
  495. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  496. <template is="aParse7" data="{{item}}" />
  497. </block>
  498. </view>
  499. </block>
  500. <!--判断是否是文本节点-->
  501. <block a:elif="{{item.node == 'text'}}">
  502. <!--如果是,直接进行-->
  503. <template is="AEmojiView" data="{{item}}" />
  504. </block>
  505. </template>
  506. <!--循环模版-->
  507. <template name="aParse7">
  508. <!--<template is="aParse8" data="{{item}}" />-->
  509. <!--判断是否是标签节点-->
  510. <block a:if="{{item.node == 'element'}}">
  511. <block a:if="{{item.tag == 'button'}}">
  512. <button type="default" size="mini">
  513. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  514. <template is="aParse8" data="{{item}}" />
  515. </block>
  516. </button>
  517. </block>
  518. <!--li类型-->
  519. <block a:elif="{{item.tag == 'li'}}">
  520. <view class="{{item.classStr}} aParse-li" style="{{item.styleStr}}">
  521. <view class="{{item.classStr}} aParse-li-inner">
  522. <view class="{{item.classStr}} aParse-li-text">
  523. <view class="{{item.classStr}} aParse-li-circle"></view>
  524. </view>
  525. <view class="{{item.classStr}} aParse-li-text">
  526. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  527. <template is="aParse8" data="{{item}}" />
  528. </block>
  529. </view>
  530. </view>
  531. </view>
  532. </block>
  533. <!--video类型-->
  534. <block a:elif="{{item.tag == 'video'}}">
  535. <template is="aParseVideo" data="{{item}}" />
  536. </block>
  537. <!--img类型-->
  538. <block a:elif="{{item.tag == 'img'}}">
  539. <template is="aParseImg" data="{{item}}" />
  540. </block>
  541. <!--a类型-->
  542. <block a:elif="{{item.tag == 'a'}}">
  543. <view bindtap="aParseTagATap" class="aParse-inline {{item.classStr}} aParse-{{item.tag}}" data-src="{{item.attr.href}}" style="{{item.styleStr}}">
  544. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  545. <template is="aParse8" data="{{item}}" />
  546. </block>
  547. </view>
  548. </block>
  549. <block a:elif="{{item.tag == 'br'}}">
  550. <template is="AParseBr"></template>
  551. </block>
  552. <!--其他块级标签-->
  553. <block a:elif="{{item.tagType == 'block'}}">
  554. <view class="{{item.classStr}} aParse-{{item.tag}}" style="{{item.styleStr}}">
  555. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  556. <template is="aParse8" data="{{item}}" />
  557. </block>
  558. </view>
  559. </block>
  560. <!--内联标签-->
  561. <view a:else class="{{item.classStr}} aParse-{{item.tag}} aParse-{{item.tagType}}" style="{{item.styleStr}}">
  562. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  563. <template is="aParse8" data="{{item}}" />
  564. </block>
  565. </view>
  566. </block>
  567. <!--判断是否是文本节点-->
  568. <block a:elif="{{item.node == 'text'}}">
  569. <!--如果是,直接进行-->
  570. <template is="AEmojiView" data="{{item}}" />
  571. </block>
  572. </template>
  573. <!--循环模版-->
  574. <template name="aParse8">
  575. <!--<template is="aParse9" data="{{item}}" />-->
  576. <!--判断是否是标签节点-->
  577. <block a:if="{{item.node == 'element'}}">
  578. <block a:if="{{item.tag == 'button'}}">
  579. <button type="default" size="mini">
  580. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  581. <template is="aParse9" data="{{item}}" />
  582. </block>
  583. </button>
  584. </block>
  585. <!--li类型-->
  586. <block a:elif="{{item.tag == 'li'}}">
  587. <view class="{{item.classStr}} aParse-li" style="{{item.styleStr}}">
  588. <view class="{{item.classStr}} aParse-li-inner">
  589. <view class="{{item.classStr}} aParse-li-text">
  590. <view class="{{item.classStr}} aParse-li-circle"></view>
  591. </view>
  592. <view class="{{item.classStr}} aParse-li-text">
  593. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  594. <template is="aParse9" data="{{item}}" />
  595. </block>
  596. </view>
  597. </view>
  598. </view>
  599. </block>
  600. <!--video类型-->
  601. <block a:elif="{{item.tag == 'video'}}">
  602. <template is="aParseVideo" data="{{item}}" />
  603. </block>
  604. <!--img类型-->
  605. <block a:elif="{{item.tag == 'img'}}">
  606. <template is="aParseImg" data="{{item}}" />
  607. </block>
  608. <!--a类型-->
  609. <block a:elif="{{item.tag == 'a'}}">
  610. <view bindtap="aParseTagATap" class="aParse-inline {{item.classStr}} aParse-{{item.tag}}" data-src="{{item.attr.href}}" style="{{item.styleStr}}">
  611. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  612. <template is="aParse9" data="{{item}}" />
  613. </block>
  614. </view>
  615. </block>
  616. <block a:elif="{{item.tag == 'br'}}">
  617. <template is="AParseBr"></template>
  618. </block>
  619. <!--其他块级标签-->
  620. <block a:elif="{{item.tagType == 'block'}}">
  621. <view class="{{item.classStr}} aParse-{{item.tag}}" style="{{item.styleStr}}">
  622. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  623. <template is="aParse9" data="{{item}}" />
  624. </block>
  625. </view>
  626. </block>
  627. <!--内联标签-->
  628. <view a:else class="{{item.classStr}} aParse-{{item.tag}} aParse-{{item.tagType}}" style="{{item.styleStr}}">
  629. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  630. <template is="aParse9" data="{{item}}" />
  631. </block>
  632. </view>
  633. </block>
  634. <!--判断是否是文本节点-->
  635. <block a:elif="{{item.node == 'text'}}">
  636. <!--如果是,直接进行-->
  637. <template is="AEmojiView" data="{{item}}" />
  638. </block>
  639. </template>
  640. <!--循环模版-->
  641. <template name="aParse9">
  642. <!--<template is="aParse10" data="{{item}}" />-->
  643. <!--判断是否是标签节点-->
  644. <block a:if="{{item.node == 'element'}}">
  645. <block a:if="{{item.tag == 'button'}}">
  646. <button type="default" size="mini">
  647. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  648. <template is="aParse10" data="{{item}}" />
  649. </block>
  650. </button>
  651. </block>
  652. <!--li类型-->
  653. <block a:elif="{{item.tag == 'li'}}">
  654. <view class="{{item.classStr}} aParse-li" style="{{item.styleStr}}">
  655. <view class="{{item.classStr}} aParse-li-inner">
  656. <view class="{{item.classStr}} aParse-li-text">
  657. <view class="{{item.classStr}} aParse-li-circle"></view>
  658. </view>
  659. <view class="{{item.classStr}} aParse-li-text">
  660. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  661. <template is="aParse10" data="{{item}}" />
  662. </block>
  663. </view>
  664. </view>
  665. </view>
  666. </block>
  667. <!--video类型-->
  668. <block a:elif="{{item.tag == 'video'}}">
  669. <template is="aParseVideo" data="{{item}}" />
  670. </block>
  671. <!--img类型-->
  672. <block a:elif="{{item.tag == 'img'}}">
  673. <template is="aParseImg" data="{{item}}" />
  674. </block>
  675. <!--a类型-->
  676. <block a:elif="{{item.tag == 'a'}}">
  677. <view bindtap="aParseTagATap" class="aParse-inline {{item.classStr}} aParse-{{item.tag}}" data-src="{{item.attr.href}}" style="{{item.styleStr}}">
  678. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  679. <template is="aParse10" data="{{item}}" />
  680. </block>
  681. </view>
  682. </block>
  683. <block a:elif="{{item.tag == 'br'}}">
  684. <template is="AParseBr"></template>
  685. </block>
  686. <!--其他块级标签-->
  687. <block a:elif="{{item.tagType == 'block'}}">
  688. <view class="{{item.classStr}} aParse-{{item.tag}}" style="{{item.styleStr}}">
  689. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  690. <template is="aParse10" data="{{item}}" />
  691. </block>
  692. </view>
  693. </block>
  694. <!--内联标签-->
  695. <view a:else class="{{item.classStr}} aParse-{{item.tag}} aParse-{{item.tagType}}" style="{{item.styleStr}}">
  696. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  697. <template is="aParse10" data="{{item}}" />
  698. </block>
  699. </view>
  700. </block>
  701. <!--判断是否是文本节点-->
  702. <block a:elif="{{item.node == 'text'}}">
  703. <!--如果是,直接进行-->
  704. <template is="AEmojiView" data="{{item}}" />
  705. </block>
  706. </template>
  707. <!--循环模版-->
  708. <template name="aParse10">
  709. <!--<template is="aParse11" data="{{item}}" />-->
  710. <!--判断是否是标签节点-->
  711. <block a:if="{{item.node == 'element'}}">
  712. <block a:if="{{item.tag == 'button'}}">
  713. <button type="default" size="mini">
  714. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  715. <template is="aParse11" data="{{item}}" />
  716. </block>
  717. </button>
  718. </block>
  719. <!--li类型-->
  720. <block a:elif="{{item.tag == 'li'}}">
  721. <view class="{{item.classStr}} aParse-li" style="{{item.styleStr}}">
  722. <view class="{{item.classStr}} aParse-li-inner">
  723. <view class="{{item.classStr}} aParse-li-text">
  724. <view class="{{item.classStr}} aParse-li-circle"></view>
  725. </view>
  726. <view class="{{item.classStr}} aParse-li-text">
  727. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  728. <template is="aParse11" data="{{item}}" />
  729. </block>
  730. </view>
  731. </view>
  732. </view>
  733. </block>
  734. <!--video类型-->
  735. <block a:elif="{{item.tag == 'video'}}">
  736. <template is="aParseVideo" data="{{item}}" />
  737. </block>
  738. <!--img类型-->
  739. <block a:elif="{{item.tag == 'img'}}">
  740. <template is="aParseImg" data="{{item}}" />
  741. </block>
  742. <!--a类型-->
  743. <block a:elif="{{item.tag == 'a'}}">
  744. <view bindtap="aParseTagATap" class="aParse-inline {{item.classStr}} aParse-{{item.tag}}" data-src="{{item.attr.href}}" style="{{item.styleStr}}">
  745. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  746. <template is="aParse11" data="{{item}}" />
  747. </block>
  748. </view>
  749. </block>
  750. <block a:elif="{{item.tag == 'br'}}">
  751. <template is="AParseBr"></template>
  752. </block>
  753. <!--其他块级标签-->
  754. <block a:elif="{{item.tagType == 'block'}}">
  755. <view class="{{item.classStr}} aParse-{{item.tag}}" style="{{item.styleStr}}">
  756. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  757. <template is="aParse11" data="{{item}}" />
  758. </block>
  759. </view>
  760. </block>
  761. <!--内联标签-->
  762. <view a:else class="{{item.classStr}} aParse-{{item.tag}} aParse-{{item.tagType}}" style="{{item.styleStr}}">
  763. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  764. <template is="aParse11" data="{{item}}" />
  765. </block>
  766. </view>
  767. </block>
  768. <!--判断是否是文本节点-->
  769. <block a:elif="{{item.node == 'text'}}">
  770. <!--如果是,直接进行-->
  771. <template is="AEmojiView" data="{{item}}" />
  772. </block>
  773. </template>
  774. <!--循环模版-->
  775. <template name="aParse11">
  776. <!--<template is="aParse12" data="{{item}}" />-->
  777. <!--判断是否是标签节点-->
  778. <block a:if="{{item.node == 'element'}}">
  779. <block a:if="{{item.tag == 'button'}}">
  780. <button type="default" size="mini">
  781. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  782. <template is="aParse12" data="{{item}}" />
  783. </block>
  784. </button>
  785. </block>
  786. <!--li类型-->
  787. <block a:elif="{{item.tag == 'li'}}">
  788. <view class="{{item.classStr}} aParse-li" style="{{item.styleStr}}">
  789. <view class="{{item.classStr}} aParse-li-inner">
  790. <view class="{{item.classStr}} aParse-li-text">
  791. <view class="{{item.classStr}} aParse-li-circle"></view>
  792. </view>
  793. <view class="{{item.classStr}} aParse-li-text">
  794. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  795. <template is="aParse12" data="{{item}}" />
  796. </block>
  797. </view>
  798. </view>
  799. </view>
  800. </block>
  801. <!--video类型-->
  802. <block a:elif="{{item.tag == 'video'}}">
  803. <template is="aParseVideo" data="{{item}}" />
  804. </block>
  805. <!--img类型-->
  806. <block a:elif="{{item.tag == 'img'}}">
  807. <template is="aParseImg" data="{{item}}" />
  808. </block>
  809. <!--a类型-->
  810. <block a:elif="{{item.tag == 'a'}}">
  811. <view bindtap="aParseTagATap" class="aParse-inline {{item.classStr}} aParse-{{item.tag}}" data-src="{{item.attr.href}}" style="{{item.styleStr}}">
  812. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  813. <template is="aParse12" data="{{item}}" />
  814. </block>
  815. </view>
  816. </block>
  817. <block a:elif="{{item.tag == 'br'}}">
  818. <template is="AParseBr"></template>
  819. </block>
  820. <!--其他块级标签-->
  821. <block a:elif="{{item.tagType == 'block'}}">
  822. <view class="{{item.classStr}} aParse-{{item.tag}}" style="{{item.styleStr}}">
  823. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  824. <template is="aParse12" data="{{item}}" />
  825. </block>
  826. </view>
  827. </block>
  828. <!--内联标签-->
  829. <view a:else class="{{item.classStr}} aParse-{{item.tag}} aParse-{{item.tagType}}" style="{{item.styleStr}}">
  830. <block a:for="{{item.nodes}}" a:for-item="item" a:key="">
  831. <template is="aParse12" data="{{item}}" />
  832. </block>
  833. </view>
  834. </block>
  835. <!--判断是否是文本节点-->
  836. <block a:elif="{{item.node == 'text'}}">
  837. <!--如果是,直接进行-->
  838. <template is="AEmojiView" data="{{item}}" />
  839. </block>
  840. </template>