All Projects → dcloudio → uParse

dcloudio / uParse

Licence: MIT license
📰适用于 uni-app/mpvue 的富文本解析自定义组件

Projects that are alternatives of or similar to uParse

showModal
适用于uni-app 的跨端显示弹层,使用接口参数与uni-app 中的showModal参数一致
Stars: ✭ 67 (+48.89%)
Mutual labels:  mpvue, uni-app
Uni App
uni-app 是使用 Vue 语法开发小程序、H5、App的统一框架
Stars: ✭ 34,949 (+77564.44%)
Mutual labels:  mpvue, uni-app
image-cropper
💯一款功能强大的微信小程序图片裁剪插件
Stars: ✭ 1,123 (+2395.56%)
Mutual labels:  mpvue, uni-app
Mp Weui
mp-weui 是基于 mpvue 和 weui-wxss 的微信小程序 UI 库。
Stars: ✭ 167 (+271.11%)
Mutual labels:  mpvue
Meedu Wxapp
📜meEdu微信小程序。(wxapp for meedu)
Stars: ✭ 199 (+342.22%)
Mutual labels:  mpvue
uni-lb-picker
uni-app picker选择器,可自定义,扩展性高,支持单选及理论任意级数多级联动选择。
Stars: ✭ 42 (-6.67%)
Mutual labels:  uni-app
uniapp-scaffold
基于Vue.js的跨平台小程序脚手架、设计语言、组件库及插拔式模板
Stars: ✭ 87 (+93.33%)
Mutual labels:  uni-app
We Cropper
微信小程序图片裁剪工具
Stars: ✭ 1,972 (+4282.22%)
Mutual labels:  mpvue
mpvue-cnode
mpvue实现的微信小程序版的cnode论坛
Stars: ✭ 84 (+86.67%)
Mutual labels:  mpvue
mpvue canvas drawer
[mpvue版本]微信小程序上canvas绘制图片助手,一个json就制作分享朋友圈图片
Stars: ✭ 43 (-4.44%)
Mutual labels:  mpvue
mpvue-one
使用mpvue构建的ONE·一个小程序,仅供学习使用
Stars: ✭ 19 (-57.78%)
Mutual labels:  mpvue
uni-pushy-server
upushy 热更新后端。https://upushy.yoouu.cn/
Stars: ✭ 30 (-33.33%)
Mutual labels:  uni-app
Didi
🚗 mpvue框架仿滴滴出行微信小程序
Stars: ✭ 222 (+393.33%)
Mutual labels:  mpvue
mtapp
💫 💫 Vue全家桶(配Nuxt)+ssr服务器渲染+koa2 打造美团App项目(还在更新...)📦
Stars: ✭ 30 (-33.33%)
Mutual labels:  mpvue
Mpvue Picker
基于 mpvue 框架的小程序选择控件,支持单列,多列,联动。
Stars: ✭ 173 (+284.44%)
Mutual labels:  mpvue
mbill blazor admin
基于Blazor + Ant Blazor搭建个人记账后台管系统,采用.NET 6搭建后台服务,采用uni-app搭建个人记账微信小程序,采用Xamarin搭建移动客户端App
Stars: ✭ 19 (-57.78%)
Mutual labels:  uni-app
Ewa
Enhanced Wechat App Development Toolkit (微信小程序增强开发工具)。不同于 wepy 或者 mpvue,是一个轻量级小程序开发框架。支持原生小程序所有功能,无需学习,极易上手。支持转换为百度/字节跳动/QQ小程序。
Stars: ✭ 160 (+255.56%)
Mutual labels:  mpvue
mpvue-wechat-zhihu
一个入门级别的资讯类微信小程序
Stars: ✭ 25 (-44.44%)
Mutual labels:  mpvue
Dailyfresh-B2C
这是一个 ☛全栈/全端/全平台☚ 的B2C模式的电商项目, web后台基于Django2.0 + Python3.6, 前后端分离,前端使用Vue框架开发。移动端基于Flutter开发,一套代码支持Android&IOS平台。微信小程序基于mpvue框架开发。
Stars: ✭ 74 (+64.44%)
Mutual labels:  mpvue
mp-framework-benchmark
mp-framework-benchmark
Stars: ✭ 49 (+8.89%)
Mutual labels:  mpvue

uParse 适用于 uni-app/mpvue 的富文本解析组件

支持 Html、Markdown 转 Wxml 可视化,Fork自: mpvue-wxParse

属性

名称 类型 默认值 描述
loading Boolean false 数据加载状态
className String 自定义 class 名称
content String 渲染内容
noData String 数据不能为空 空数据时的渲染展示
startHandler Function 见源码 自定义 parser 函数
endHandler Function null 自定义 parser 函数
charsHandler Function null 自定义 parser 函数
imageProp Object 见下文 图片相关参数

自定义 parser 函数具体介绍

  • 传入的参数为当前节点 node 对象及解析结果 results 对象,例如 startHandler(node, results)
  • 无需返回值,通过对传入的参数直接操作来完成需要的改动
  • 自定义函数会在原解析函数处理之后执行

imageProp 对象具体属性

名称 类型 默认值 描述
mode String 'aspectFit' 图片裁剪、缩放的模式
padding Number 0 图片内边距
lazyLoad Boolean false 图片懒加载
domain String '' 图片服务域名

事件

名称 参数 描述
preview 图片地址,原始事件 预览图片时触发
navigate 链接地址,原始事件 点击链接时触发

基本使用方法

  • 使用
<template>
  <div>
    <uParse :content="article" @preview="preview" @navigate="navigate" />
  </div>
</template>

<script>

import uParse from '@/components/u-parse/u-parse.vue'
export default {
  components: {
    uParse
  },
  data () {
    return {
      article: '<div>我是HTML代码</div>'
    }
  },
  methods: {
    preview(src, e) {
      // do something
    },
    navigate(href, e) {
      // do something
    }
  }
}
</script>

<style>
@import url("~mpvue-wxparse/src/wxParse.css");
</style>

渲染 Markdown

先将 markdown 转换为 html 即可

npm install marked
import marked from 'marked'
import wxParse from 'mpvue-wxparse'

export default {
  components: {
    wxParse
  },
  data () {
    return {
      article: marked(`#hello, markdown!`)
    }
  }
}

Tips

  • v0.6 之后的版本样式文件需自行引入

  • 对性能要求较高的话,推荐使用这个原生组件版 wxParser-plugin

  • 打包时出错 ERROR in static/js/vendor.js from UglifyJs

参照以下配置使 babel 处理 mpvue-wxparse,或更新 UglifyJs 插件

// webpack.base.conf.js
{
  test: /\.js$/,
  include: [resolve('src'), /mpvue-wxparse/],
  use: [
    'babel-loader',
    {
      loader: 'mpvue-loader',
      options: {
        checkMPEntry: true
      }
    }
  ]
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].