feat(mp): 文章详情页改用 mp-html 原生富文本组件

- 引入 mp-html 替代 RichText,支持图文混排、表格等复杂内容
- 新建 RichArticle 组件封装 sanitizeHtml + mp-html
- 通过 native-components 拷贝原生组件到 dist
- 优化文章排版样式(字号、间距、分隔线、底栏安全区)
- sanitize-html 扩展允许 style/data-w-e-type 属性
This commit is contained in:
iven
2026-05-25 13:44:00 +08:00
parent a24c18155f
commit 185f411495
17 changed files with 162 additions and 34 deletions

View File

@@ -11,11 +11,12 @@ const ALLOWED_TAGS = new Set([
]);
const ALLOWED_ATTRS: Record<string, Set<string>> = {
'*': new Set(['class']),
'*': new Set(['class', 'style', 'data-w-e-type']),
a: new Set(['href', 'title']),
img: new Set(['src', 'alt', 'width', 'height']),
td: new Set(['colspan', 'rowspan']),
th: new Set(['colspan', 'rowspan']),
span: new Set(['style']),
};
const URL_ATTRS = new Set(['href', 'src']);