【问题标题】:Function createInterface with readline带有 readline 的函数 createInterface
【发布时间】:2017-11-15 09:11:16
【问题描述】:

我想使用矩阵服务器和 readline 包在两个客户端之间创建通信。

我创建了一个客户:

var myUserId = "@nina:my.domain.name";
var myAccessToken = "nina";
var sdk = require("matrix-js-sdk");
var clc = require("cli-color");
var matrixClient = sdk.createClient({
  baseUrl: "http://localhost:8448",
  idBaseUrl: "https://vector.im",
  accessToken: myAccessToken,
  userId: myUserId
});

我创建了一个界面:

var readline = require("readline");
var rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
  completer: completer
});
rl.setPrompt("$ ");`

我收到此错误:错误类型错误:readline.createInterface is not a function

【问题讨论】:

  • 您使用哪个版本的节点?你有从 npm 安装的 readline 包吗?
  • @hsz 我有这个:@types/node": "~6.0.60", "ts-node": "~3.0.4","readline": "^1.3.0",

标签: javascript node.js readline


【解决方案1】:

根据您的评论 - 您已安装:

"@types/node": "~6.0.60"
"ts-node": "~3.0.4"
"readline": "^1.3.0"

readline 包不包含createInterface 方法。 本机 nodejs 还包含一个名为 readline 的包,它被一个 prom npm 存储库所覆盖。

您应该简单地卸载readline,因此将使用本机节点包。

【讨论】:

  • 卸载 Readline 后仍有错误。他把这个错误Module build failed: Error: ENOENT: no such file or directory,放在这条线上var readline = require("readline");我应该做点什么吗?
猜你喜欢
  • 1970-01-01
  • 2019-10-21
  • 2021-11-07
  • 2017-08-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-26
相关资源
最近更新 更多