【发布时间】:2017-09-10 19:03:03
【问题描述】:
从一本教程书我得到以下代码
createShoppingList: (store, shoppinglist) => {
return api.addNewShoppingList(shoppinglist).then(() => {
store.dispatch('populateShoppingLists')
}, () => {
store.commit(types.ADD_SHOPPING_LIST, shoppinglist)
})
}
注意 .then() 块后面的逗号
它是否等同于链式 .then() ?
createShoppingList: (store, shoppinglist) => {
return api.addNewShoppingList(shoppinglist)
.then(() => {
store.dispatch('populateShoppingLists')
})
.then(() => {
store.commit(types.ADD_SHOPPING_LIST, shoppinglist)
})
}
或者它只是 .then() 内的一个块? 喜欢:
return api.addNewShoppingList(shoppinglist)
.then(
() => { store.dispatch('populateShoppingLists')},
() => { store.commit(types.ADD_SHOPPING_LIST, shoppinglist) }
)
感谢反馈
【问题讨论】:
-
不,逗号不在 .then() 之后……它在里面…….then 的第二个回调函数是拒绝时调用的函数
-
好的,谢谢...所以似乎在 thi 代码中有一个错误,因为当解决了 apI.addNewShoppingList 时应该执行 store.commit 和 store.dispatch ......在这个 oredr 中。提交然后分派..)
-
也许,谁知道呢,没有完整的上下文
-
是的,但是在书的上下文中,在添加 shoppingList(将其保存到服务器: ShoppingListsResource.save(data) )之后,必须将其提交到本地商店,然后重新显示新的通过调度执行操作“populateShoppingLists”来列出...
-
第三个 sn-p 与第一个完全相同,只是换行符不同。是的,它显然与第二个不同。
标签: javascript promise