Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js typescript中Nodejs内置模块的自定义修补程序_Node.js_Typescript_Patch_Readline - Fatal编程技术网

Node.js typescript中Nodejs内置模块的自定义修补程序

Node.js typescript中Nodejs内置模块的自定义修补程序,node.js,typescript,patch,readline,Node.js,Typescript,Patch,Readline,我正在使用带有nodejs内置模块的typescript编写一个REPL应用程序。要构建定制的shell,需要更改readline completer的一小部分实现。我已找到,并希望从output+='\r\n\r\n'执行一个小修复程序到输出+='\r\n'在第665行 我想一种方法是让readline.js有一个补丁版本,并为其编写一个类型声明。但由于readline是一个内置模块,太多的变量(例如第65行的原语)在别处声明,简单地重写源文件会导致编译错误。重新说明该模块似乎不切实际 这个问

我正在使用带有nodejs内置模块的typescript编写一个REPL应用程序。要构建定制的shell,需要更改readline completer的一小部分实现。我已找到,并希望从
output+='\r\n\r\n'执行一个小修复程序
输出+='\r\n'在第665行

我想一种方法是让readline.js有一个补丁版本,并为其编写一个类型声明。但由于readline是一个内置模块,太多的变量(例如第65行的
原语
)在别处声明,简单地重写源文件会导致编译错误。重新说明该模块似乎不切实际


这个问题有什么解决办法吗?

您不能接受更改吗?我知道仅仅为了删除换行/换行而这样做似乎有点极端,但我认为你是对的,否则没有简单的方法可以做到这一点。@RichN我认为你是对的。我将把我的应用程序发布到一个安装了修改过的node.js的容器中。对于这样一个小东西来说,这听起来是一个极端的措施。补码器必须以这种方式运行吗?@AKX我首先认为应该有一种简单而优雅的方式来执行我不知道的修复,所以我发布了这个问题。如果单个
\r\n\r\n
是问题所在,你能不能用非原语重写单个函数并将其修补
readline.Interface.prototype.\u tabComplete=yourCompatibleImplementation