草庐IT

promise_server

全部标签

javascript - 使用 'Promise' 与不使用 'Promise' : in which cases?

我不知道SO是否适合提出这样的问题。我知道一点Promises,我在Node/Express环境中使用它们来“修复”Node的异步行为查询数据库(=等待数据库回答,然后做一些事情)。然而,我使用它们的次数越多,我就越不知道何时不用它们。例如,我写了一段这样的代码(用于查询GoogleMatrixAPI的本地脚本).......for(vari=0;i{}...我不知道在这里使用Promise.all是否有意义...有规律可知吗?我没有得到的行为?换句话说,我什么时候知道我的脚本运行没有正确参数的函数存在“风险”(argument从另一个函数返回这不是“结束”)...?谢谢。

javascript - Promise.then 不执行

在下面的代码块中,只有“firstpromise”被记录到控制台。这是为什么?我试图编写一个测试来弄清楚.then()在.catch()之后是如何执行的,但当除了第一个promise之外什么都没有运行时,我感到很惊讶。这是怎么回事?functionfoo(){returnnewPromise((resolve,reject)=>{returnconsole.log('firstpromise')}).then(()=>console.log('firstthen')).catch(()=>console.log('catchblock')).then(()=>console.log('

javascript - 第二个 .then() on promise 被调用时数据未定义

我在名为accountManager的服务中有一个函数返回如下所示的promise:这个promise上的.then()会触发并打印出预期的响应。signIn(email:String,password:String):Promise{returnthis.http.post('http://localhost:3000/api/signin',JSON.stringify({"email":email,"password":password}),{headers:this.headers}).toPromise().then(res=>{//**Thisisdefined**cons

javascript - webpack-dev-server 没有在本地创建 dist 文件夹

webpack-dev-server成功捆绑了html、scss和js文件,输出也在localhost:8080上提供,但dist文件夹没有在本地创建。以下是我的webpack配置:varextractPlugin=newExtractTextPlugin({filename:'main.css'});module.exports={entry:'./src/index.js',output:{path:path.resolve(__dirname,'dist'),filename:'bundle.js',},devtool:'inline-source-map',devServer:

javascript - Promise.all()被拒绝后的值,显示['' PromiseStatus''] : resolved if catch block is present

我有两个promise,一个被拒绝,一个被解决。Promise.all被调用。当其中一个promise被拒绝时,它执行了Promise.all的catchblock。constpromise1=Promise.resolve('Promise1Resolved');constpromise2=Promise.reject('Promise2Rejected');constpromise3=Promise.all([promise1,promise2]).then(data=>{console.log('Promise.allResolved',data);}).catch(error=

javascript - 什么是成熟的 promise

当我偶然发现这条线时,我正在浏览mongoose文档Mongoosequeriesarenotpromises.Theyhavea.then()functionforcoandasync/awaitasaconvenience.Ifyouneedafully-fledgedpromise,usethe.exec()function.以这个例子varquery=Band.findOne({name:"GunsN'Roses"});assert.ok(!(queryinstanceofPromise));//Aqueryisnotafully-fledgedpromise,butitdoe

javascript - Node.js 路由 : Adding route handlers to an already instantiated http server

如何将路由处理程序添加到已存在且已实例化的http服务器?我发现的所有路由器(包括express)似乎都要求将它们传递到http.createServer()方法中。例如express:varserver=http.createServer(app);我的主要标准:以类似于sockjs的方式将路由添加到现有服务器做到了。不知道正在使用的路由器(如果有的话)不依赖于现有的路由器“app”对象来添加路由(使用路由库创建一个新的就可以了)。示例:将服务器传递给SockJSvarhttp_server=http.createServer();//agnosticsockjs_server.in

javascript - Dojo 中的“解析器返回未填充的 promise ”错误

在我的代码中使用dojo/parser时出现以下错误。解析器返回未填充的promise(可能等待模块自动加载),_WidgetsInTemplateMixin不支持。我已经define(["dojo/_base/declare","dijit/_WidgetBase","myApp/base/_TemplatedMixin","dijit/_WidgetsInTemplateMixin","dojo/text!../templates/MyTemplate.html","dojo/i18n!../nls/Localized","myApp/js/utils/hint","dijit/f

javascript - 你为什么要执行 $q.when() 而不给它传递一个 promise /值?

根据theAngulardocson$q,$q.when()期望传递一个promise/值。但我只是遇到了别人的代码,其中调用它时没有传递任何参数。这是我所看到的简化版本:varmodal=false;if(modalOpen){return$q.when()}modalOpen=true;modal=newModal({template:opts.template,});modal.result.finally(function(){modalOpen=false;});} 最佳答案 方法应该同步返回或异步返回以保持一致。如果一个

javascript - 服务 worker : how to update the cache when files changed on the server?

您使用什么缓存策略?我阅读了OfflineCookbook,最简单的使用策略是缓存静态内容并忽略API调用。这个策略看起来是这样的:检查请求是否已经在缓存中如果不将请求、响应对添加到缓存返回响应如果服务器端的文件已更改,如何更新缓存?目前,客户端始终获取缓存的结果。这是我的缓存策略的代码://Youwillneedthispolyfill,atleastonChrome41andolder.importScripts("serviceworker-cache-polyfill.js");varVERSION=1;varCACHES={common:"common-cache"+VERS