tnblog
首页
视频
资源
登录

小程序html解析如:后台添加的文章详情

4412人阅读 2020/1/6 10:12 总访问:29234 评论:0 收藏:0 手机
分类: 小程序

项目中遇到在微信小程序里需要显示音乐文章的内容,文章内容是通过接口读取的服 务器中的富文本内容,是html格式的,小程序默认是不支持html格式的内容显示的, 那我们需要显示html内容的时候,就可以通过wxParse来实现。

1.把wxParse文件全部放入项目根目录。

2.在wxml中import wxParse.wxml,并把template插入到到对应的位置上

  1. <!--wxml-->
  2. <import src="../../../wxParse/wxParse.wxml"/>
  3. <view class="view-title">{{title}}</view>
  4. <view class="view-time-box">
  5.   <text class="view-date">{{date}}</text>
  6.   <text class="view-time">{{time}}</text>
  7. </view>
  8. <template is="wxParse" data="{{wxParseData:article.nodes}}"/>

3.在wxss中import wxParse.wxss,并设置样式;比如‘wxParse-image’是富文本图片转化成image组件之后的类名,‘wxParse-p’是p标签转化成view组件后设置的类名

  1. <!--wxss-->
  2. @import "../../../wxParse/wxParse.wxss";
  3. page{
  4.   background: #fff;
  5. }
  6. .view-title{
  7.   line-height: 80rpx;
  8.   font-size: 48rpx;
  9.   color:#0C0C0C;
  10.   overflow: hidden;
  11.   text-overflow: ellipsis;
  12.   display: -webkit-box;
  13.   -webkit-line-clamp: 2;
  14.   -webkit-box-orient: vertical;
  15.   max-height: 190rpx;
  16.   min-height: 80rpx;
  17.   width:690rpx;
  18.   padding:30rpx 30rpx 0;
  19. }
  20. .view-time-box{
  21.   height66rpx;
  22.   line-height: 66rpx;
  23.   font-size: 30rpx;
  24.   color:#999999;
  25.   margin-bottom: 40rpx;
  26.   padding:0 30rpx;
  27. }
  28. .view-date{
  29.   margin-right: 20rpx;
  30. }
  31. .wxParse-img{
  32.   margin-top:20rpx;
  33.   display: block;
  34.   position:relative;
  35.   top:0;
  36.   left:50%;
  37.   transform: translateX(-50%);
  38. }
  39. .wxParse-p{
  40.   text-indent: 2em;
  41.   margin-top:20rpx;
  42.   color:#0C0C0C;
  43.   line-height:50rpx;
  44.   font-size:34rpx;
  45.   padding:0 30rpx 30rpx;
  46.   text-align: justify;
  47. }

4.js

  1. var WxParse = require('../../../wxParse/wxParse.js');
  2. Page({
  3.  
  4.   /**
  5.    * 页面的初始数据
  6.    */
  7.   data: {
  8.     title'',
  9.     date"",
  10.     time"",
  11.     id''
  12.   },
  13.  
  14.   /**
  15.    * 生命周期函数--监听页面加载
  16.    */
  17.   onLoad: function (options{
  18.     this.setData({
  19.       id:options.id
  20.     })
  21.   },
  22.   onShowfunction ({
  23.     wx.showLoading({
  24.       title'加载中...',
  25.     })
  26.     var that = this;
  27.  
  28.     // 模拟获取数据
  29.     setTimeout(function ({
  30.       that.setData({
  31.         title:'侨宝柑普茶新会陈皮侨宝柑',
  32.         date:"2018-03-01",
  33.         time:"13:20:53"
  34.       })
  35.       var article = `
  36.         <img src="../../../imgs/index/s.png"></img>
  37.     <p>微信小程序如何解析HTML富文本(使用wxParse解析富文本的demo)微信小程序如何解析HTML富文本(使用wxParse解析富文本的demo)微信小程序如何解析HTML富文本(使用wxParse解析富文本的demo)</p>
  38.     <p>微信小程序如何解析HTML富文本(使用wxParse解析富文本的demo)微信小程序如何解析HTML富文本(使用wxParse解析富文本的demo)微信小程序如何解析HTML富文本(使用wxParse解析富文本的demo)</p>
  39.         <img src="../../../imgs/index/s.png"></img>
  40.     <p>近两年,小青柑的火爆有目共睹,娇小玲珑的产品形态、便携式的消费场景、柑与茶结合的时尚方式以及独特的口感和养生功效,都在顺应着目前年轻化、多元化、便携化的茶叶消费市场需求,让它成为了一大爆品。</p>
  41.       `;
  42.       /**
  43.       * WxParse.wxParse(bindName , type, data, target,imagePadding)
  44.       * 1.bindName绑定的数据名(必填)
  45.       * 2.type可以为html或者md(必填)
  46.       * 3.data为传入的具体数据(必填)
  47.       * 4.target为Page对象,一般为this(必填)
  48.       * 5.imagePadding为当图片自适应是左右的单一padding(默认为0,可选)
  49.       */
  50.       WxParse.wxParse('article''html', article, that, 20);
  51.       
  52.       // 更改数据、获取新数据完成
  53.       wx.hideLoading();
  54.     }, 500)
  55.   }
  56. })

具体的API可以去GitHub上查看:https://github.com/icindy/wxParse


评价

C.Net 配合小程序实现经过第三方服务器中转文件

某些时候,微信小程序前段上传文件的时候需要经过第三方服务器再将文件上传到客户的服务器;操作如下:1:(小程序内向中端服...

微信小程序中利用DOM获取页面元素的信息

在js中,我们常常用到类似 $(&quot;#id&quot;) 这样的代码获得一个页面元素对象 但是在微信小程序中是不支持的,那么我们...

在微信小程序中还原手机淘宝页面

好久没更新帖子了,最近无聊的紧,就想着在微信小程序中来写写手机淘宝的样式,我是一个干后端的,会有瑕疵,不喜勿喷有一起研究...

导出SQL脚本小程序

usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; usingSystem.Threading.Tasks; ...

微信小程序学习笔记

小程序是什么?小程序是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或者搜一下即可打...

小程序城市列表实现

小程序城市列表实现实现城市列表选择准备地址数据citydata.jsmodule.exports={ &quot;city&quot;:[ { &quot;title&quot;...

微信扫码---进入小程序指定页面(传参)

使用场景:商场的游戏机,用微信扫码获取机器id,进入到小程序指定页面,进行下单购买。微信公众平台中开发——开发设置—...

微信小程序canvas的使用

画布。2.9.0 起支持一套新 Canvas 2D 接口(需指定 type 属性),同时支持同层渲染。Canvas 2D 示例代码html:&lt;canvastyp...

微信小程序设置页面导航条颜色

使用wx.setNavigationBarColor(Object object)即可参考代码:wx.setNavigationBarColor({ frontColor:&#39;#ffffff&#39;, ...

uni-app页面跳转与传值。uni-app 小程序 本地存储。传值的编码与解码,传递中文参数

注意跳转的目标页面需要在page.json中申明哦,不然无法跳转哦,应该跳转的目标地址是一个页面,所以需要定义uni-app中页面...

小程序滚动浮窗案例

onPageScroll:function(e){var that=this;if (this.scrollEndTimer) {clearTimeout(this.scrollEndTimer);this.scrollEndTi...

uin小程序滚动浮窗案例

perfToX(){//悬浮按钮向右滑动 this.animation=uni.createAnimation({duration:300,timingFunction:&#39;ease&#39;}) thi...

uni-app弹窗,小程序,弹出层。自定义组件弹窗,解决滚动穿透

官方文档:https://uniapp.dcloud.net.cn/component/uniui/uni-popup.html [TOC]最简单的弹出一句话:需要什么东西在内容...

微信小程序发送验证码

先在js中定义方法post()的部分引入写好api开始引入js的方法获取验证码绑定async getUserBind() { var _this=this; if...

uni-app 微信小程序 上传图片文件,uniapp。uni-file-picker 和数据一起上传图片,上传图片的时候携带数据。多图上传

[TOC]uni-app中上传图片可以使用方法uni.uploadFileuni.uploadFile官方文档:https://uniapp.dcloud.net.cn/api/request/ne...
不喜欢写代码的程序员
排名
62
文章
5
粉丝
2
评论
2
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术