# Taro RichText 富文本组件使用指南 ## 基本用法 ```tsx import { RichText } from '@tarojs/components'; // 显示HTML字符串 ``` ## 主要属性 ### nodes - **类型**: `string | Array` - **说明**: 富文本内容,支持HTML字符串或节点数组 ### space - **类型**: `'ensp' | 'emsp' | 'nbsp'` - **说明**: 显示连续空格的方式 - `ensp`: 中文字符空格一半大小 - `emsp`: 中文字符空格大小 - `nbsp`: 根据字体设置的空格大小 ### selectable - **类型**: `boolean` - **默认值**: `false` - **说明**: 富文本是否可以长按选中 ## HTML内容处理 ### 支持的HTML标签 - 文本标签: `p`, `span`, `div`, `h1-h6`, `strong`, `b`, `em`, `i` - 列表标签: `ul`, `ol`, `li` - 其他标签: `img`, `a`, `br`, `hr` ### 样式处理 富文本内容的样式通过CSS全局样式定义: ```scss .content { :global { p { margin: 16px 0; } img { max-width: 100%; } // 更多样式... } } ``` ## 实际应用示例 ### 文章详情页面 ```tsx ``` ### 协议页面 ```tsx ``` ## 注意事项 1. **安全性**: RichText会直接渲染HTML,注意防范XSS攻击 2. **性能**: 大量富文本内容可能影响性能 3. **兼容性**: 不同平台对HTML标签支持程度不同 4. **样式**: 使用`:global`确保样式能正确应用到富文本内容 ## 常见问题 ### 图片不显示 - 检查图片URL是否正确 - 确保图片域名在小程序白名单中 ### 样式不生效 - 使用`:global`包裹富文本样式 - 检查CSS选择器优先级 ### 内容被截断 - 检查容器高度设置 - 使用`max-width: 100%`防止内容溢出