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

无法导入Lighthouse的startFlow模块,模块路径不存在求助

解决Lighthouse用户流示例中ERR_MODULE_NOT_FOUND错误

问题原因

Lighthouse版本迭代后,官方已将Fraggle Rock(用户流API)的入口路径从lighthouse/lighthouse-core/fraggle-rock/api.js调整到了包的顶层导出,旧路径结构已被移除,导致示例代码中的导入语句失效。

解决方案

1. 修正导入语句

将原代码中的导入路径替换为包的顶层导出:

// 替换原导入行
import {startFlow} from 'lighthouse';

2. 修改后的完整代码

import fs from 'fs';
import open from 'open';
import puppeteer from 'puppeteer';
import {startFlow} from 'lighthouse'; // 修正后的导入路径

async function captureReport() {
  const browser = await puppeteer.launch({headless: false});
  const page = await browser.newPage();

  const flow = await startFlow(page, {name: 'Single Navigation'});
  await flow.navigate('https://web.dev/performance-scoring/');

  await browser.close();

  const report = await flow.generateReport();
  fs.writeFileSync('flow.report.html', report);
  open('flow.report.html', {wait: false});
}

captureReport();

3. 验证依赖版本

确保安装的是Lighthouse最新稳定版,若之前安装的版本过旧,可重新安装:

npm install lighthouse@latest puppeteer open

4. 确认ES模块配置

确保package.json中已正确设置ES模块:

{
  "type": "module"
}

完成以上修改后,重新执行node official_example.js即可正常生成用户流报告。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 10:42:43