javascript - 我可以导出/要求 Node.js 中的模块在没有 var 保存其对象的情况下使用吗?

标签 javascript node.js error-handling custom-error-handling

我正在创建自己的错误库,以便在我的 API 上返回特定且有据可查的错误的自定义目录。我正在做这样的事情:

module.exports = CError;

function CError () {
}

// CUSTOM ERROR TYPES
CError.EmptyParamError = createErrorType(...);
CError.InvalidFormatError = createErrorType(...);

我现在如何使用自定义错误类型的示例:

CError = require('cerror');

if(!passwd)
    callback(new CError.EmptyParamError(passwd, ...));

我将在整个项目中使用此错误,并且我希望有一个像这样的更清晰的代码:(没有 CError 引用)

if(!passwd)
    callback(new EmptyParamError(passwd, ...);

有没有办法导出模块或需要它来允许我执行此操作?

我用谷歌搜索没有找到任何答案,我也检查了所有这些interface design patterns for Node.js modules但没有人申请。

最佳答案

您可以将其设置为全局变量,但与往常一样使用全局变量时,请注意副作用。

EmptyParamError = createErrorType(...);

就是这样。只需省略 var 关键字,并且不要将其设置为属性即可。

关于javascript - 我可以导出/要求 Node.js 中的模块在没有 var 保存其对象的情况下使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30352485/

相关文章:

c# - Windows窗体应用程序中的记录错误

javascript - JavaScript 中的弹出窗口

node.js - 在 View 中显示一对多关系的列表 sails.js waterline orm

javascript - 如何使用 npm 更新特定的子包版本

javascript - React Native : process. env 只有 NODE_ENV

exception-handling - Labview中的正常故障(在设备无法打开之后-在这种情况下为相机)

javascript - WebKit 未捕获错误 : INVALID_STATE_ERR: DOM Exception 11

javascript - Angular JS 和 Restangular : How to include a header and parameters in POST request?

javascript - 访问Json数组数据

java - Android-无法解决java.lang.StringIndexOutOfBoundsException