我有一个名为getFormattedURI( URI )的方法,它接受一个URI并对其进行解析,以获取网站名称和查询等内容。此方法向URI发送请求,并对响应执行操作。但是,我希望getFormattedURI(uri)之后的所有代码都等到该方法完成,因为我在下面的代码中使用了该方法的返回值。它是这样的: request.get(uri).end((err, res) => {
//(using superagent request) do stuff with res and return parse
失败:等待量角器与页面同步时出错:“无法在窗口上找到角”堆栈:错误:失败:等待量角器与页面同步时出错:“在/Users/faizul/WebstormProjects/canary/node_modules/protractor/node_modules/jasminewd2/index.js:104:16 at /Users/faizul/WebstormProjects/canary/node_mo
快递文档说:
同步函数和方法将执行过程捆绑起来,直到它们返回为止。对同步函数的单个调用可能在几微秒或毫秒内返回,但是在高流量网站中,这些调用会增加并降低应用程序的性能。因此,我的问题是,在节点/表达式的上下文中,如果我有一个函数接受一些静态值并返回一个计算结果(通常我会认为它是一个“同步函数”),那么将该函数封装在new Promise和resolve中是最佳实践吗?例如://inside my index.js
var myA
相反,我希望完成同步的'require‘(据我理解),然后按顺序调用promise.resolve,从而维护承诺链。“要求”启动,随后的承诺被解析,但“要求”不同步完成)。因此,当“查找”发生时,模式/模型不可用:Configuring filename: .}node_modules/bluebird/js/main/util.js:26:23)
at Promise._settlePromis
我正在尝试创建一个带有异步验证的控件,并且我不想要同步验证: "", [this.valueUnique.bind(this)]如果将同步验证参数保持为_updateTreeValidity (forms.js:2523)在forms.js:2522 at forms.js:3309 at Array.forE