插件编程节点js

问题描述:

我正在开发一种使用nodeJs(net,express,socketIo)的多用途服务器。多用途意味着它的接收数据,我将稍后在自定义插件中处理,也用nodejs编写。 在服务器启动时,加载了一个配置文件告诉应用程序,应该使用require加载哪些额外的js文件。所有包含一个返回对象的create函数的插件。该对象被推入数组中以供参考。插件编程节点js

self.config.plugins.forEach(function(plugin){    
     var plugin = require(Path.join(pluginDir,plugin.name, index.js")).create(self);      
     self.apps.push(plugin);    
    }); 

该插件必须从一个特殊的基类继承和关注的一个特殊模式(我想用类似于C#风格的接口,但没有找到一个解决方案还)。

现在我的问题:

如果在我的任何插件出错整个应用程序会崩溃。如何在不将每个插件方法放入try/catch语句的情况下实现错误处理?

我希望有人明白我的问题,并能指导我在正确的方向

您可以使用过程uncaughtException事件:http://nodejs.org/api/process.html#process_event_uncaughtexception,但建议使用try/catch语句和投掷的错误在那里的东西进去这是一种不受欢迎的方式,这些try/catch语句应该放置在使用模块内容的地方。