setInnerHtml 方法

void setInnerHtml(
  1. String? html,
  2. {NodeValidator? validator,
  3. NodeTreeSanitizer? treeSanitizer}}
)

解析 HTML 片段并将其设置为该元素的内容。这确保生成的内容遵循由验证器或 treeSanitizer 指定的清理规则。

如果默认的验证行为过于严格,则应创建一个新的 NodeValidator,可以扩展或包装默认验证器并覆盖验证 API。

treeSanitizer 用于遍历生成的节点树并将其清理。还可以提供自定义 treeSanitizer 以执行特殊验证规则,但由于 API 较复杂,不鼓励这样做。

结果树保证仅包含由提供的验证器允许的节点和属性。

另请参阅

实现

void setInnerHtml(String? html,
    {NodeValidator? validator, NodeTreeSanitizer? treeSanitizer}) {
  text = null;
  if (treeSanitizer is _TrustedHtmlTreeSanitizer) {
    _innerHtml = html;
  } else {
    append(createFragment(html,
        validator: validator, treeSanitizer: treeSanitizer));
  }
}