与Node REPL交互应用程序代码

3
Rails等框架的好处之一是可以在命令行中与模型进行交互。作为一个很新的node.js用户,我经常会把应用程序代码块粘贴到REPL中以便操作对象。这样做很不规范。
有没有什么方法可以让更有经验的node开发者从node提示符中访问他们的特定于应用程序的内容?是否将整个应用程序或部分应用程序打包成模块以便进行require()操作是一个解决方案?我仍然停留在单个大文件的领域,所以把所有东西都拿出来虽然是不可避免的,但还是有点令人望而生畏。
非常感谢您提供的任何有用提示!
3个回答

1

如果您想要做什么,那么“单个大文件”实际上是一个很好的选择。Node.js也可以在代码本身中require它的REPL,这将节省您复制和粘贴的时间。

这里是我项目中的一个简单示例。在文件顶部附近执行类似于以下内容的操作:

function _cb() {
  console.log(arguments)
}

var repl = require("repl");
var context = repl.start("$ ").context;
context.cb = _cb;

现在只需在您的代码中添加上下文即可。_cb是一个虚拟回调,用于测试需要一个函数调用(并查看它们将返回什么)的情况。

1

看起来 REPL API 已经有了很大的改变,这段代码对我有效:

  var replServer = repl.start({
    prompt: "node > ",
    input: process.stdin,
    output: process.stdout,
    useGlobal: true
  });
  replServer.on('exit', function() {
    console.log("REPL DONE");
  });

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接