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

如何在现有Node项目中引入TypeScript编写的Puppeteer扩展?

问题:在Node.js项目中集成TypeScript编写的Puppeteer扩展

背景

我有一个基于Puppeteer的Node.js项目,核心代码如下:

import puppeteer from "puppeteer-extra";
const browser = await puppeteer.launch(...);

我找到一个TypeScript编写的Puppeteer扩展,想将其集成到现有项目中,但遇到了一系列问题。

尝试1:使用ts-import直接加载TypeScript文件

我尝试用ts-import工具直接加载扩展的TypeScript文件,修改后的代码如下:

import * as tsImport from 'ts-import'
const HumanBrowser = await tsImport.load('HumanBrowser.ts')
const browser = await HumanBrowser.launch(...);

虽然成功加载了TypeScript文件,但运行时出现了模块找不到的错误:

Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'puppeteer-extra' imported from /.cache/ts-import/code/HumanBrowser.mjs
    at packageResolve (node:internal/modules/esm/resolve:853:9)
    at moduleResolve (node:internal/modules/esm/resolve:910:20)
    at defaultResolve (node:internal/modules/esm/resolve:1130:11)
    at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:396:12)
    at ModuleLoader.resolve (node:internal/modules/esm/loader:365:25)
    at ModuleLoader.getModuleJob (node:internal/modules/esm/loader:240:38)
    at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:85:39)
    at link (node:internal/modules/esm/module_job:84:36) {
  code: 'ERR_MODULE_NOT_FOUND'
}

我猜测ts-import和Node.js的适配存在问题,想知道有没有适合Node.js环境的同类工具。

尝试2:构建TypeScript项目后导入

我运行npm run build命令构建了该TypeScript扩展项目(项目包含project.json),成功生成了编译后的文件,但不清楚如何将这些构建后的文件正确导入到我的Node.js项目中。

疑问

这个扩展的代码量不大,直接将其改写为Node.js代码是不是更简单?毕竟TypeScript和JavaScript的语法看起来非常相似。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 03:56:04