@ciolabs/html-process-conditional-comments

中文文档
0.0.4发布于 2026/02/20Apache-2.0 WITH Commons-ClauseTypeScriptESM + CJS构建来源已验证近 30 天下载 2.2万

方便在有条件的注释内安全处理 HTML

中文使用文档
文档目录8 节
  1. 为什么?
  2. 安装
  3. 使用量
  4. API 密码
  5. 预处理( 来源: 字符串) xq 字符串
  6. 后进程( 来源: 字符串) qq 字符串
  7. 获取嵌入式文档( 来源: 字符串) @ info
  8. 类型脚本支持

@ciolabs/进程-有条件的评论

方便在有条件的注释内安全处理 HTML

为什么?

有条件的评论是针对特定电子邮件客户端的一种方式. 例如,您可以使用有条件的注释来瞄准2007年及以下的"展望". 然而,有条件的注释是字面上的 HTML 注释,所以不能用普通的 HTML 解析器来解析. 这个库通过披露HTML内容,并在处理完成后将HTML回包在有条件的注释内,使得HTML在有条件的注释内部安全处理变得容易.

安装

npm install @ciolabs/process-conditional-comments

使用量

import { preprocess, postprocess } from '@ciolabs/process-conditional-comments';

const html = `
  <!--[if mso]>
    <div>hello</div>
  <![endif]-->
`;

const processed = preprocess(html);

// now parse the HTML and do whatever you want with it
const doc = new HtmlMod(processed);

// do some manipulation
doc.querySelector('div').innerHTML = 'world';

// now postprocess the HTML
const postprocessed = postprocess(doc.toString());

console.log(postprocessed);
//=> <!--[if mso]>
//=>   <div>world</div>
//=> <![endif]-->

API 密码

预处理( 来源: 字符串) xq 字符串

通过在条件注释中披露 HTML 内容来预处理 HTML 字符串。 这是有条件的注释内部处理 HTML 的第一步.

示例

<!--[if mso]>HTML<![endif]-->

变成

<!--[if mso]>__PROCESS_CONDITIONAL_COMMENTS-->HTML<!--__PROCESS_CONDITIONAL_COMMENTS<![endif]-->

后进程( 来源: 字符串) qq 字符串

后处理 HTML 字符串,将 HTML 内容包装在有条件的注释内。 这是有条件注释内部处理HTML的最后一步.

恢复由 preprocess()。 。 。 .

获取嵌入式文档( 来源: 字符串) @ info

获得完整的嵌入式文档,以等长的白空间来取代有条件的注释.

如果您想要在不附带条件的注释标记的情况下提取 HTML 内容,同时保留原始文档结构和字符位置,则此选项是有用的 .

类型脚本支持

此软件包由TypeScript所构建,并提供了完整的类型定义.

版本与发布记录

@ciolabs/html-process-conditional-comments 共发布 5 个版本,首次发布于 2025/09/19;过去 12 个月发布了 3 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.0.4latest2026/02/208 个月前
0.0.32026/02/208 个月前
0.0.22025/11/1811 个月前
0.0.12025/09/191.1 年前
0.0.02025/09/191.1 年前

关于 @ciolabs/html-process-conditional-comments 的常见问题

@ciolabs/html-process-conditional-comments 是什么?

方便在有条件的注释内安全处理 HTML

如何安装 @ciolabs/html-process-conditional-comments?

在项目目录运行 npm install @ciolabs/html-process-conditional-comments,或使用 pnpm add / yarn add / bun add。

@ciolabs/html-process-conditional-comments 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@ciolabs/html-process-conditional-comments 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@ciolabs/html-process-conditional-comments 可以商用吗?

@ciolabs/html-process-conditional-comments 使用 Apache-2.0 WITH Commons-Clause 许可。声明的许可为 Apache-2.0 WITH Commons-Clause,请阅读许可原文确认使用条件。以上为概括,不构成法律意见,请以许可原文为准。

@ciolabs/html-process-conditional-comments 的下载量有多少?

根据 npm 官方下载统计,@ciolabs/html-process-conditional-comments 在 2026/10/10 – 2026/11/08 这 30 天内被下载 22,424 次,日均约 747 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@ciolabs/html-process-conditional-comments 还在维护吗?

最新版本 0.0.4 发布于 2026/02/20(8 个月前);至今共发布 5 个版本,其中过去 12 个月发布了 3 个;首次发布于 2025/09/19。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。