UNPKG

@szmg-fe/tarco

Version:

function library in Taro

38 lines (33 loc) 1.09 kB
import Taro from '@tarojs/taro'; import { useFinishRender } from "@szmg-fe/hooks/useEffect"; interface Handle { (el): void } /** * 格式化小程序原生dangerous html * @param config */ export default function useTransformElement(config?: { viewClass?: string imageClass?: string handle?: Handle }) { useFinishRender(() => { const { viewClass = '', imageClass = '', handle = Function.prototype as any } = config || {}; // @ts-ignore Taro.options.html.transformElement = el => { el.removeAttribute('style'); if (el.nodeName === 'image') { el.setAttribute('mode', 'widthFix'); el.setAttribute('lazyLoad', true); el.setAttribute('showMenuByLongpress', true); imageClass && el.setAttribute('class', imageClass); } else if (el.nodeName === 'view') { el.setAttribute('class', el.childNodes.length ? viewClass : 'empty-text'); } else { } handle(el); return el } }) }