小程序默认是不支持html格式的内容显示的,那我们需要显示html内容的时候,就可以通过wxParse来实现。

  首先我们下载wxParse,github地址:https://github.com/icindy/wxParse

1、下载完之后我们需要用到目录下的wxParse文件夹,把他拷贝到我们的项目目录下(与pages同级目录)

2、然后,在app.wxss全局样式文件中,需要引入wxParse的样式表

@import "wxParse/wxParse.wxss";

3、在需要加载html内容的页面对应的js文件里引入wxParse

const WxParse = require('../../wxParse/wxParse.js');

  通过调用WxParse.wxParse方法来设置html内容

  WxParse.wxParse(bindName , type, data, target,imagePadding)
  1、bindName绑定的数据名(必填)
  2、type可以为html或者md(必填)
  3、data为传入的具体数据(必填)
  4、target为Page对象,一般为this(必填)
  5、imagePadding为当图片自适应时左右的单一padding(默认为0,可选)
// 获取问题详情
getIssueDetail (id) {
var that = this
app.ajaxGet('dbask/detail/' + id, {}, res => {
this.setData({
issue: res.data
})
if (that.data.issue.description) {
WxParse.wxParse('issue.description', 'html', that.data.issue.description, that);
}
var _data = that.data.issue.askItems
var _len = _data.length
for (var i = ; i < _len; i++) {
WxParse.wxParse('comment' + i, 'html', _data[i].comment, that);
if (i === _len - ) {
WxParse.wxParseTemArray("askItemsArr", 'comment', _data.length, that)
}
}
wx.hideLoading()
})
},

4、最后,在页面中引用模板

<import src="../../wxParse/wxParse.wxml"/>

<view class='issue_content'>
<template is="wxParse" data="{{wxParseData:issue.description.nodes}}"/>
</view>

  注意循环使用的时候,引用模板

<view class='issue_content'>
  <template is="wxParse" data="{{wxParseData:askItemsArr[index]}}"/>
</view>

  注意wxParse解析数组数据时,按照文档上的方法进行操作

      var _data = that.data.issue.askItems
var _len = _data.length
for (var i = ; i < _len; i++) {
WxParse.wxParse('comment' + i, 'html', _data[i].comment, that);
if (i === _len - ) {
WxParse.wxParseTemArray("askItemsArr", 'comment', _data.length, that)
}
}

  这个时候我们会发现askItemsArr里只有comment的数据,其他数组都消失了。

  那么在渲染数组时,我们就通过askItemsArr[index]去将数组传入

微信小程序显示html格式内容(wxParse使用及循环解析数据渲染)的更多相关文章

  1. 微信小程序-显示外链图片 bug

    微信小程序-显示外链图片 bug 显示外链图片 bug 403 bug 禁止外链,未授权 https://httpstatuses.com/403 image component 图片.支持 JPG. ...

  2. 微信小程序获取输入框(input)内容

    微信小程序---获取输入框(input)内容 wxml <input placeholder="请输入手机号码" maxlength="11" type= ...

  3. 微信小程序--仿微信小程序朋友圈Pro(内容发布、点赞、评论、回复评论)

    微信小程序--仿微信小程序朋友圈Pro(内容发布.点赞.评论.回复评论) 项目开源地址M朋友圈Pro 求个Star 项目背景 ​ 基于原来的开源项目 微信小程序仿朋友圈功能开发(发布.点赞.评论等功能 ...

  4. PHP 实现微信小程序敏感图片、内容检测接口

    主要是为了调用微信小程序msgSecCheck.imgSecCheck接口. 先附上小程序接口说明文档地址:https://developers.weixin.qq.com/miniprogram/d ...

  5. 微信小程序 获得用户输入内容

    在微信小程序里,如何获得用户输入的内容?? js: document.getElementById("Content").value jq:$("#Content&quo ...

  6. 微信小程序显示cms里的html文章

    首先在cms模版中将html文章转化为json数据,识别图片,文本和换行,过滤掉样式和标签.这里是用PHP的正则表达式函数来实现的,$content是cms里的html文章. <?php $_a ...

  7. 手持式停车收费管理系统全套案例,支持车牌识别,包含了android版app,微信小程序查询,响应式管理后台,云端大数据存储

    先展示几个app效果图片吧,使用起来非常方便,关联了机器的快捷键操作,操作速度提高了不少,摄像头车牌自动识别,车牌识别无网络情况下离线也可以使用   再来一张后台截图,停车场信息完整显示,今日数据实时 ...

  8. 微信小程序:wx.request之post请求后端无法获取数据的问题

    前言:小程序的开发中总是踩到各种坑,看文档也不知所云: 例如当我们在写微信小程序接口时,method请求方式有POST和GET两种,为了数据安全,我们会偏向于使用POST请求方式访问服务器端: 问题: ...

  9. 微信小程序开发--富文本插件wxParse的使用

    昨天一位网友问我小程序怎么解析富文本.他尝试过把html转出小程序的组件,但是还是不成功,我说可以把内容剥离出来.但是这两种方法都是不行了.后来找到了wxParse-微信小程序富文本解析组件. 特性 ...

随机推荐

  1. BZOJ.3143.[HNOI2013]游走(概率 期望 高斯消元)

    题目链接 参考 远航之曲 把走每条边的概率乘上分配的标号就是它的期望,所以我们肯定是把大的编号分配给走的概率最低的边. 我们只要计算出经过所有点的概率,就可以得出经过一条边(\(u->v\))的 ...

  2. 二叉查找树(二叉排序树)的详细实现,以及随机平衡二叉查找树Treap的分析与应用

    这是一篇两年前写的东西,自我感觉还是相当不错的Treap教程.正好期末信息科学技术概论课要求交一个论文,就把这个东西修改了一下交了,顺便也发到这里吧. 随机平衡二叉查找树Treap的分析与应用 1.序 ...

  3. Codeforces 986D Perfect Encoding FFT

    题意: 给定一个数n,选出m个数使得 $\Pi_{i=1}^m a_i\ge n$,求$\sum_{i=1}^m a_i$的最小值 ,其中$m$的大小不限 $n$的长度$\le 10^6$ 简单的计算 ...

  4. HDU 5832 A water problem 水题

    A water problem 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5832 Description Two planets named H ...

  5. Mac安装jdk1.6

    需到apple官网下载 下载地址:https://support.apple.com/kb/DL1572?viewlocale=en_US&locale=en_US 相关介绍: http:// ...

  6. DM6467开发领航-开发坏境安装

  7. delphi 实现Ribbon风格的窗体

    随着office2007的兴起,微软让我们看到了Ribbon风格的窗体,现在很多软件也都开始使用Ribbon风格.那么我们如果要自己开发,应当怎么做呢?本文就是为大家解开这个疑团的. 首先,Delph ...

  8. 在ASP.NET MVC控制器中获取链接中的路由数据

    在ASP.NET MVC中,在链接中附加路由数据有2种方式.一种是把路由数据放在匿名对象中传递: <a href="@Url.Action("GetRouteData&quo ...

  9. 在xcode5下设置两个viewController跳转——关键是禁用arc

    1.禁用arc 2.然后使用如下代码: - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:( ...

  10. 一文犀利看懂中美贸易战 z

    如今的中国面对着前所未有的经济全球化的大环境.面对着如何成为创新性国家的重任. 钛媒体注:美国东部时间 7 月 6 日凌晨0:01 分,美国正式开始对 340 亿美元的中国产品加征 25% 的关税,这 ...