HTML 转义工具。
安装
安装模块
npm install @wordpress/escape-html
本包假设您的代码将在 ES2015+ 环境中运行。如果您使用的环境对这些语言特性和 API 的支持有限或完全不支持,则应在代码中包含 @wordpress/babel-preset-default 随附的 polyfill。
API
escapeAmpersand
返回一个转义了连字符 (&) 的字符串。请注意,这是一个不完美的实现,其中只有未以命名、十进制或十六进制字符引用模式出现的连字符才会被转义。无效的命名引用(即歧义连字符)仍被允许。
相关资源
- https://w3c.github.io/html/syntax.html#character-references
- https://w3c.github.io/html/syntax.html#ambiguous-ampersand
- https://w3c.github.io/html/syntax.html#named-character-references
参数
- value
string: 原始字符串。
返回值
string: 转义后的字符串。
escapeAttribute
返回转义后的属性值。
相关资源
- https://w3c.github.io/html/syntax.html#elements-attributes “[…] 文本不能包含歧义连字符 […] 不得包含
任何字面量 U+0022 双引号字符 (”)"
注意,我们还转义了大于号,因为 wptexturize 使用它来
分割 HTML 字符串。这是 WordPress 特有的修复。
注意,如果 Trac#45387 得到解决,则不再需要
使用 __unstableEscapeGreaterThan。
注意,我们还转义了小于号,以防止 HTML 注入漏洞
和解析问题,特别是对于没有 unfiltered_html 能力的用户。
参见:https://core.trac.wordpress.org/ticket/45387
参数
- value
string: 属性值。
返回值
string: 转义后的属性值。
escapeEditableHTML
返回转义后的可编辑 HTML 元素值。这与 escapeHTML 不同,因为对于可编辑 HTML,必须转义所有连字符才能正确呈现页面上的内容。
参数
- value
string: 元素值。
返回值
string: 转义后的 HTML 元素值。
escapeHTML
返回转义后的 HTML 元素值。
相关资源
- https://w3c.github.io/html/syntax.html#writing-html-documents-elements “文本不得包含 U+003C 小于号 (\<) 或
歧义连字符。”
参数
- value
string: 元素值。
返回值
string: 转义后的 HTML 元素值。
escapeLessThan
返回替换了小于号的字符串。
参数
- value
string: 原始字符串。
返回值
string: 转义后的字符串。
escapeQuotationMark
返回替换了引号的字符串。
参数
- value
string: 原始字符串。
返回值
string: 转义后的字符串。
isValidAttributeName
如果给定的属性名有效则返回 true,否则返回 false。
参数
- name
string: 要测试的属性名。
返回值
boolean: 属性是否有效。
为此包做出贡献
这是 Gutenberg 项目的一个独立包。该项目作为 monorepo 组织。它由多个自包含的软件包组成,每个包都有特定的用途。此 monorepo 中的包发布到 npm,并被 WordPress 以及其他软件项目使用。
要了解有关为此包或整个 Gutenberg 做出贡献的更多信息,请阅读项目的主要 贡献者指南。