5

是否可以在 node.js 中创建像这样异步的链式方法

File.create('file.jpg').rename('renamed.jpg').append('Hello World')

也就是不阻塞。

4

2 回答 2

8

您基本上想抽象出 API 上文件处理操作的异步特性。

可以的,推荐你看看下面的文章:

这篇文章的作者是 Dustin Diaz,他目前在@anywhere JavaScript API上工作,他完全按照你的意愿去做,使用一个简单的 Queue 实现,可以创建一个流畅的接口,独立于任何回调。

异步性是隐藏的,它由您的 API 在内部处理,这是一种很好且简单的技术。

于 2010-11-08T06:46:55.937 回答
0

当然,就像任何 JavaScript 一样,您只需返回一个具有该方法的对象。

一种可能的布局(在众多布局中)。

var File = new (function() 
{ 
  this.create = function(str) 
  { 
    return this; 
  } 
  this.rename = function(str) 
  { 
    return this; 
  } 
})(); 
于 2010-11-08T06:17:13.920 回答