在Promise链中产生错误

托马斯·里德

我将如何检查JSON的属性,如果缺少该属性,则会返回退出和捕获链的错误?

var Promise = require("bluebird");
var fs = Promise.promisifyAll(require("fs"));

fs.readFileAsync("myfile.json").then(JSON.parse).then(function (json) {
    if (!json.prop) return new Error("missing prop");
    return json;
}).catch(SyntaxError, function (e) {
    console.error("file contains invalid json");
}).catch(Promise.OperationalError, function (e) {
    console.error("unable to read file, because: ", e.message);
});

示例取自bluebird文档

亚瑟·韦伯

您可以typeof像其他错误一样使用操作数,捕获未定义和抛出/捕获,特别是ReferenceError在您的情况下可以使用类型:

fs.readFileAsync("myfile.json").then(JSON.parse).then(function (json) {
    if (typeof json.prop === "undefined") throw new ReferenceError("missing prop");
    return json;
}).catch(SyntaxError, function (e) {
    console.error("file contains invalid json");
}).catch(Promise.OperationalError, function (e) {
    console.error("unable to read file, because: ", e.message);
}).catch(ReferenceError,function(e){
    //handle the error
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Java中产生致命错误

来自分类Dev

正常的SQL会在pg-promise中产生语法错误

来自分类Dev

jQuery的sourceMappingURL在apache中产生404错误

来自分类Dev

如何在PHP中产生404错误?

来自分类Dev

Java ROBOT在Excel中产生错误

来自分类Dev

地图中的条件在 ReactJS 中产生错误

来自分类Dev

LoginForm 在 Django 中产生未知的验证错误

来自分类Dev

错误的商店ID在Magento后端中产生错误

来自分类Dev

Haskell初学者:“无实例...从...中产生”错误

来自分类Dev

导入库会在Play Framework中产生错误

来自分类Dev

在Fuzzywuzzy模块中产生网状R包错误

来自分类Dev

std :: bind在libstdc ++中产生编译错误

来自分类Dev

jQuery插件在IE 8中产生错误

来自分类Dev

按月分组在laravel控制器中产生错误

来自分类Dev

头文件中的结构在源文件中产生错误

来自分类Dev

'-print_statistics' 链接器选项在 Xcode 中产生错误

来自分类Dev

为什么while循环会在我的代码中产生错误?

来自分类Dev

Parceler 类不会在 Android 中产生错误

来自分类Dev

在命题归纳中使用“记住”会在Coq中产生“错误类型”错误

来自分类Dev

使用平均值会在VBA中产生应用程序定义的错误或对象定义的错误

来自分类Dev

在推论中使用记忆而不是命题会在Coq中产生“错误类型”错误

来自分类Dev

@在JAXRS / RestEasy中产生集合

来自分类Dev

在PHP中产生WAV音调

来自分类Dev

卡在Unity中产生对象

来自分类Dev

无法在Erlang中产生进程

来自分类Dev

从数组中产生排列的列表

来自分类Dev

无法在Kafka中产生讯息

来自分类Dev

从读取文件中产生 islice

来自分类Dev

为什么这个复杂的有理数会在Julia中产生溢出错误?

Related 相关文章

热门标签

归档