Javascript I';我收到一个未处理的拒绝承诺错误,但可以';我不明白为什么

Javascript I';我收到一个未处理的拒绝承诺错误,但可以';我不明白为什么,javascript,express,massive,Javascript,Express,Massive,我得到以下错误: const express = require('express'); const cors = require('cors'); const massive = require('massive'); const bodyParser = require('body-parser'); const config = require('../config'); const app = express(); app.use(bodyParser.json()); //mas

我得到以下错误:

const express = require('express');
const cors = require('cors');
const massive = require('massive');
const bodyParser = require('body-parser');
const config = require('../config');

const app = express();

app.use(bodyParser.json());

//massive connection string to database

massive(config.dblink).then(db => {
    app.set('db', db)

    app.get('db').seed_file().then(res => {
        console.log(res)
    })
}).catch(err => {
    console.log(err)
});

const port = 3001;
app.listen(port, () => {console.log(`the server is listening on ${port}`)})
我还没能弄清楚到底是怎么回事。我看过多个不同的例子,但看不出问题所在。在我的
种子文件之后,我有一个
.catch

有什么想法吗

我收到一个未处理的拒绝承诺错误,但无法解决 为什么

您收到此警告是因为您有未处理的拒绝承诺:)。outer
catch()
方法没有处理嵌套的承诺拒绝,因此有两个选项:

1)在嵌套的承诺上使用return,它将从外部捕获
catch()

2)使用内部
catch()
以不同方式处理嵌套拒绝:

massive(config.dblink).then(db => {
    app.set('db', db)
    return app.get('db').seed_file().then(res => {
        console.log(res)
    });
}).catch(err => console.log(err) });
演示:

函数doPromise(someText,flag){
返回新承诺(功能(解决、拒绝){
setTimeout(函数(){
标志?解决(someText):拒绝(someText);
}, 500);
});
}
/*以下示例演示未处理的拒绝*/
doPromise('这将解决',true)。然后(函数(res1){
控制台日志(res1);
doPromise('这是未处理的承诺拒绝',false)。然后(函数(res2){
console.log(res2);
});
});
/*以下示例演示如何处理嵌套承诺拒绝(如第1点所述)*/
doPromise('1)这将解析',true)。然后(函数(res1){
控制台日志(res1);
返回doPromise('1)从外部捕获的嵌套拒绝,false);
}).catch(err=>console.log(err));
/*以下示例演示如何处理嵌套承诺拒绝(如第2点所述)*/
doPromise('2)这将解决',true)。然后(函数(res1){
控制台日志(res1);
doPromise('2)从内部捕获的嵌套拒绝(false)).catch(err=>console.log(err));

}).catch(err=>console.log(err))
就在console.log(res)
的正下方,您有一个额外的
})
。删除它,你应该good@MarkDodds事实并非如此,只是代码格式不好
massive(config.dblink).then(db => {
    app.set('db', db)
    return app.get('db').seed_file().then(res => {
        console.log(res)
    });
}).catch(err => console.log(err) });
massive(config.dblink).then(db => {
    app.set('db', db)
    app.get('db').seed_file().then(res => {
        console.log(res)
    }).catch(err => console.log(err) });
}).catch(err => console.log(err) });