首页 > 解决方案 > 牧马人工人:HTMLRewriter.on 与 ElementHandler 不工作

问题描述

我正在尝试使用我的 Worker 使用以下语法重写 HTML 页面的内容:

async function handleIndex(request) {
    const init = {
        headers: {
          "content-type": "text/html;charset=UTF-8",
        },
      }

    const response = await fetch(HTML_URL, init)

    return new HTMLRewriter()
        .on(
          "div",
          new ElementHandler()
        )
        .transform(response)
}

这直接取自HTMLRewriter 文档,但每当我点击调用它的端点时,它都会给我这个错误:

Uncaught (in promise)
TypeError: The "listener" argument must be of type Function. Received type object
    at c (worker.js:1:2687)
    at l (worker.js:1:2897)
    at u.addListener (worker.js:1:5518)
    at worker.js:1:1327

这是我第一次使用 Workers;我究竟做错了什么?

标签: cloudflare-workers

解决方案


已修复:某些 IDE 会建议您从“事件”导入 HTMLRewriter。不要这样做!


推荐阅读