例如:
redis.get('xfers:Turkey').then( data => {
var GAME_ID = 25;
return [returnPromise, returnPromise2]
}).spread( (success, success2) => {
//GAME_ID here is undefined
});
但是,你可以这样做:
redis.get('xfers:Turkey').then( data => {
var GAME_ID = 25;
return [returnPromise, returnPromise2, GAME_ID]
}).spread( (success, success2, GAME_ID) => {
//GAME_ID here is passed
});
哪种方法很好,我觉得我做错了什么。如果我创建了很多变量,我需要传递大量的arguments
。 (对于每个连续的链条) - 我很好奇是否有更直观的方法,谢谢!
答案 0 :(得分:1)
首先,回答你的问题 - 是否有更直观的方法将值传递到承诺链 - 不,根据我的经验'返回'值,因为下一个回调参数是你能得到的最好的。
如果您明智地使用这些基本工具,那么您可以获得良好的代码清晰度和可维护性。以下是我在编写承诺链时使用的一些基本规则:
GAME_ID
看起来很适合。