мы сделали некоторые проверки кода, и код, прежде чем был, как следующее:Promise все конвенции подходы
run: () =>{
var _this = this;
return Promise.all([
//Get command
cp.getCommand(constants.HB),
//Find port
cp.findPort()
]).spread((r1, r2) => {
...
После проверки кода мои коллеги предполагают, чтобы изменить его к следующему, который я не согласен , поскольку вам нужно добавить ненужный код (массив & push), и я не уверен, что это более читаемо, что вы думаете?
run: function() => {
var _this = this;
var promiseArray = [];
//Get command
promiseArray.push(cp.getCommand(constants.HB));
//Find port
promiseArray.push(cp.findPort());
return Promise.all(promiseArray)
.spread((r1, r2) => {
Это полностью основанное на мнениях и не связанное с обещаниями. В качестве подсказки вы можете использовать '.join' вместо двух опций и получить еще лучший синтаксис. 'Promise.join (cp.getCommand (константы.HB), cb.findPort(), (r1, r2) => {...' –
Второй - действительно ужасный код. Используйте литералы массива, когда содержимое статично. Если вы используете ES6, вы можете использовать '.then (([r1, r2]) => ...)' вместо 'spread'. Или, как говорит Бенджамин, просто используя« push ». – Bergi
пойдите для «Promise.join» от Bluebird. – Bergi