You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Flutter中生成文本HTML?解决flutter_quill无法传输HTML至API的问题

解决flutter_quill 6.1.7无法发送HTML文本到API的问题

flutter_quill默认存储的是Delta格式内容,并非直接的HTML,所以得先把Delta转换为HTML字符串,再发送给API,给你两种可行方案:

方案一:使用第三方转换包

  1. 在pubspec.yaml中添加依赖:
dependencies:
  flutter_quill: ^6.1.7
  quill_html_converter: ^1.2.0 # 选择适配flutter_quill 6.x的版本即可
  1. 获取控制器的Delta内容并转换为HTML:
// 假设你的Quill控制器实例为_quillController
final delta = _quillController.document.toDelta();
final htmlContent = deltaToHtml(delta);
  1. 将转换后的HTML内容作为请求体发送到API:
// 以http包为例的API请求示例
final response = await http.post(
  Uri.parse('你的API接口地址'),
  body: {'content': htmlContent},
  headers: {'Content-Type': 'application/x-www-form-urlencoded'},
);

方案二:使用flutter_quill自带的转换工具

无需额外引入包,直接用框架内置的转换器:

import 'package:flutter_quill/flutter_quill.dart';

// 将Delta格式转换为HTML字符串
final htmlContent = QuillHtmlConverter.convertDeltaToHtml(_quillController.document.toDelta());

注意事项

  • 转换完成后可以先打印HTML内容,确认<h1>这类标签是否正常生成,避免格式错乱
  • 提前和API端确认接收格式,比如是否需要转义特殊字符、支持哪些HTML标签类型

内容的提问来源于stack exchange,提问作者our world

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 17:25:38