开发者

Create chained methods in node.js?

Is it possible to create chained methods that are asynchronous开发者_如何学JAVA like this in node.js

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

That is to say non-blocking.


You basically want to abstract the asynchronous nature of the file-handling operations on your API.

It can be done, I would recommend you to give a look to the following article:

  • Asynchronous method queue chaining in JavaScript

The article was written by Dustin Diaz, who currently works on the @anywhere JavaScript API, and he does exactly what you want, using a using a simple Queue implementation, a fluent interface can be created, being independent of any callback.

The asynchronicity is hidden and it is handled internally by your API, it's a nice and simple technique.


Sure, like any JavaScript, you just return an object that has that method.

One possible layout (among many).

var File = new (function() 
{ 
  this.create = function(str) 
  { 
    return this; 
  } 
  this.rename = function(str) 
  { 
    return this; 
  } 
})(); 
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜