嵌套诺言是否在node.js中正常?
现在学习node.js时我一直在苦苦挣扎两周的问题是如何使用node进行同步编程。我发现,无论我如何尝试[依次,我总是以嵌套的诺言告终。我发现存在诸如Q之类的模块,以帮助在可维护性方面实现Promise链。
我在进行研究时不了解的是Promise.all()
,Promise.resolve()
和Promise.reject()
。 Promise.reject
的名称几乎可以自我解释,但是在编写应用程序时,我对如何在不破坏应用程序行为的情况下在函数或对象中包括其中任何一个感到困惑。当来自Java或C#等编程语言时,node.js肯定有一个学习曲线。仍然存在的问题是,promise链在node.js中是否正常(最佳实践)。
示例:
driver.get('').then(function () {
loginPage.login('company.admin', 'password').then(function () {
var employeePage = new EmployeePage(driver.getDriver());
employeePage.clickAddEmployee().then(function() {
setTimeout(function() {
var addEmployeeForm = new AddEmployeeForm(driver.getDriver());
addEmployeeForm.insertUserName(employee.username).then(function() {
addEmployeeForm.insertFirstName(employee.firstName).then(function() {
addEmployeeForm.insertLastName(employee.lastName).then(function() {
addEmployeeForm.clickCreateEmployee().then(function() {
employeePage.searchEmployee(employee);
});
});
});
});
}, 750);
});
});
});
现在学习node.js时我一直在苦苦挣扎两周的问题是如何使用node进行同步编程。我发现无论我如何尝试按顺序执行任务,我总是...回答如下:不,Promises的一大优点是,您可以使异步代码保持线性而不是嵌套(从连续传递样式回调地狱)。
嵌套诺言是否在node.js中正常?
现在学习node.js时我一直在苦苦挣扎两周的问题是如何使用node进行同步编程。我发现,无论我如何尝试[依次,我总是以嵌套的诺言告终。我发现存在诸如Q之类的模块,以帮助在可维护性方面实现Promise链。
我在进行研究时不了解的是Promise.all()
,Promise.resolve()
和Promise.reject()
。 Promise.reject
的名称几乎可以自我解释,但是在编写应用程序时,我对如何在不破坏应用程序行为的情况下在函数或对象中包括其中任何一个感到困惑。当来自Java或C#等编程语言时,node.js肯定有一个学习曲线。仍然存在的问题是,promise链在node.js中是否正常(最佳实践)。
示例:
driver.get('').then(function () {
loginPage.login('company.admin', 'password').then(function () {
var employeePage = new EmployeePage(driver.getDriver());
employeePage.clickAddEmployee().then(function() {
setTimeout(function() {
var addEmployeeForm = new AddEmployeeForm(driver.getDriver());
addEmployeeForm.insertUserName(employee.username).then(function() {
addEmployeeForm.insertFirstName(employee.firstName).then(function() {
addEmployeeForm.insertLastName(employee.lastName).then(function() {
addEmployeeForm.clickCreateEmployee().then(function() {
employeePage.searchEmployee(employee);
});
});
});
});
}, 750);
});
});
});
现在学习node.js时我一直在苦苦挣扎两周的问题是如何使用node进行同步编程。我发现无论我如何尝试按顺序执行任务,我总是...回答如下:不,Promises的一大优点是,您可以使异步代码保持线性而不是嵌套(从连续传递样式回调地狱)。