提问人:Mako 提问时间:11/17/2023 更新时间:11/17/2023 访问量:24
模块“node:process”没有导出的成员“dlopen”
Module '"node:process"' has no exported member 'dlopen'
问:
我的 Typescript 项目 () 中有以下代码:[email protected], [email protected], @types/[email protected]
index.ts
import { dlopen } from "node:process";
nodemon index.ts
运行成功(我的本地插件已加载并执行)
tsc
但是失败了error TS2339: Property 'dlopen' does not exist on type 'Process'
我看了一下,发现实际上不存在(https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/node/v18/process.d.ts),甚至没有出现在整个本地和全局中(文本搜索已完成)。dlopen
node_modules/@types/node/process.d.ts
node_modules
我想必须以某种方式存在于 nodejs 运行时中,这就是工作的原因,但它的类型定义根本不存在。dlopen
nodemon index.ts
如何解决/解决此问题?
答:
1赞
AKX
11/17/2023
#1
您可以尝试在项目中为该函数添加新的本地声明文件:types.d.ts
dlopen
declare module 'process' {
export function dlopen<T = any>(module: any, filename: string, flags?: any): T;
}
评论
dlopen
一定以某种方式存在于nodejs运行时中” - 软件不是猜测。当然存在,在 Node.js 文档中进行了描述。软件包(以及通常的软件包)不是权威的信息来源;它仅向 TypeScript 编译器提供提示,该编译器没有关于 Node.js 导出哪些类型或函数的任何其他信息源。很可能需要更新。dlopen()
@types/node
@types/*
@types/node