RichText组件不适用于对HTML字符串的显示效果进行较多自定义的应用场景。例如RichText组件不支持通过设置属性与事件,来修改背景颜色、字体颜色、字体大小、动态改变内容等。在这种情况下,推荐使用Web组件。RichText文档 https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-basic-components-richtext-V5\#接口对于超链接加载监听参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-basic-components-web-V5\#oninterceptrequest9参考示例:import web_webview from '@ohos.web.webview'; import business_error from '@ohos.base'; @Entry @Component struct RichTextDemo { controller: web_webview.WebviewController = new web_webview.WebviewController(); responseResource: WebResourceResponse = new WebResourceResponse() @State weburl:string = '' data: string = `<html><body bgcolor=\"white\"> <a href="https://www.huawei.com">我是链接</a> <br/> <br/> <br/> <a href="https://news.huawei.com/">我是链接,会跳转</a> </body></html>` build() { Column() { Button('loadData') .onClick(() => { try { this.controller.loadData(this.data, "text/html", "UTF-8"," ", " ") } catch (error) { let e: business_error.BusinessError = error as business_error.BusinessError; console.error(`ErrorCode: ${e.code}, Message: ${e.message}`); } }) Web({ src: '', controller: this.controller }) .mixedMode(MixedMode.All) .javaScriptAccess(true) } } }
RichText组件不适用于对HTML字符串的显示效果进行较多自定义的应用场景。例如RichText组件不支持通过设置属性与事件,来修改背景颜色、字体颜色、字体大小、动态改变内容等。在这种情况下,推荐使用Web组件。
RichText文档 https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-basic-components-richtext-V5\#接口
对于超链接加载监听参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-basic-components-web-V5\#oninterceptrequest9
参考示例: