草庐IT

promise2

全部标签

node.js - 启动应用程序时使用 pg-promise 验证数据库连接

我正在构建一个使用pg-promise连接到postgres数据库的快速应用程序。模块。我想在启动应用服务器时确保数据库连接成功。换句话说,如果与数据库的连接失败,我想抛出一个错误。我的server.js文件如下:constexpress=require("express");constdatabaseConfig={"host":"localhost","port":5432,"database":"library_app","user":"postgres"};constpgp=require("pg-promise")({});constdb=pgp(databaseConfig

node.js - 启动应用程序时使用 pg-promise 验证数据库连接

我正在构建一个使用pg-promise连接到postgres数据库的快速应用程序。模块。我想在启动应用服务器时确保数据库连接成功。换句话说,如果与数据库的连接失败,我想抛出一个错误。我的server.js文件如下:constexpress=require("express");constdatabaseConfig={"host":"localhost","port":5432,"database":"library_app","user":"postgres"};constpgp=require("pg-promise")({});constdb=pgp(databaseConfig

javascript - 提供 Promise 作为模块的导出是否是 Node.js 中异步初始化的有效模式?

我需要编写一些模块来一次加载数据,然后为该数据提供一个接口(interface)。我想异步加载数据。我的应用程序已经使用了Promise。提供一个promise是因为要求一个模块是一个有效的模式/习语吗?示例模块:varDB=require('promise-based-db-module');module.exports=DB.fetch('foo').then(function(foo){return{getId:function(){returnfoo.id;},getName:function(){returnfoo.name;}};});示例用法:require('./myP

javascript - 提供 Promise 作为模块的导出是否是 Node.js 中异步初始化的有效模式?

我需要编写一些模块来一次加载数据,然后为该数据提供一个接口(interface)。我想异步加载数据。我的应用程序已经使用了Promise。提供一个promise是因为要求一个模块是一个有效的模式/习语吗?示例模块:varDB=require('promise-based-db-module');module.exports=DB.fetch('foo').then(function(foo){return{getId:function(){returnfoo.id;},getName:function(){returnfoo.name;}};});示例用法:require('./myP

javascript - 在 Q Promises 中跳过 then 函数的正确方法

在我的代码中,根据特定条件,我想跳到done函数,而不考虑所有then函数。这个问题的原始版本在编辑中。以下是我正在处理的实际问题。很抱歉给您带来不便实际问题:我正在读取一个文件并处理它。如果文件的内容符合某些条件,我必须对文件系统进行一系列操作(比如读写几个文件),然后执行done函数。如果条件不成立,我要跳过这一系列操作,直接执行done函数。我在所有then函数中返回一个对象(比如说result),在下一个then中我更新result并返回它。所以,当所有的then都完成后,done就会有累积的result。最后,done将处理result并打印出来。因此,如果最初不满足条件,d

javascript - 在 Q Promises 中跳过 then 函数的正确方法

在我的代码中,根据特定条件,我想跳到done函数,而不考虑所有then函数。这个问题的原始版本在编辑中。以下是我正在处理的实际问题。很抱歉给您带来不便实际问题:我正在读取一个文件并处理它。如果文件的内容符合某些条件,我必须对文件系统进行一系列操作(比如读写几个文件),然后执行done函数。如果条件不成立,我要跳过这一系列操作,直接执行done函数。我在所有then函数中返回一个对象(比如说result),在下一个then中我更新result并返回它。所以,当所有的then都完成后,done就会有累积的result。最后,done将处理result并打印出来。因此,如果最初不满足条件,d

javascript - Bluebird Promise.all - 多个 Promise 完成聚合成功和拒绝

今天有人用bluebird提出了一个有趣的案例,在我们不想停止给定的履行或拒绝,而是有兴趣检查最终结果的情况下,处理多个promise的最佳方式是什么。一个例子:varp1=newPromise(function(f,r){setTimeout(function(){console.log("p1");f("yay");},100);});varp2=newPromise(function(f,r){setTimeout(function(){console.log("p2");r(newError("boo"));},200);})varp3=newPromise(function(

javascript - Bluebird Promise.all - 多个 Promise 完成聚合成功和拒绝

今天有人用bluebird提出了一个有趣的案例,在我们不想停止给定的履行或拒绝,而是有兴趣检查最终结果的情况下,处理多个promise的最佳方式是什么。一个例子:varp1=newPromise(function(f,r){setTimeout(function(){console.log("p1");f("yay");},100);});varp2=newPromise(function(f,r){setTimeout(function(){console.log("p2");r(newError("boo"));},200);})varp3=newPromise(function(

javascript - 阅读 Fetch Promise 的正文

我有以下用于上传到GoogleCloud存储的快速端点。它工作得很好,来自googleapi的响应给了我一个唯一的文件名,我想将它传回我的前端:app.post('/upload',(req,res)=>{varform=newformidable.IncomingForm(),files=[],fields=[];form.on('field',function(field,value){fields.push([field,value]);}).on('file',function(field,file){files.push([field,file]);}).on('end',f

javascript - 阅读 Fetch Promise 的正文

我有以下用于上传到GoogleCloud存储的快速端点。它工作得很好,来自googleapi的响应给了我一个唯一的文件名,我想将它传回我的前端:app.post('/upload',(req,res)=>{varform=newformidable.IncomingForm(),files=[],fields=[];form.on('field',function(field,value){fields.push([field,value]);}).on('file',function(field,file){files.push([field,file]);}).on('end',f