mySandwich - это функция, которая ничего не возвращает.Согласно вашему коду
mySandwich(5)
.then(function (data) {
console.log("promise 1 num is" + data);
})
.catch(function (err) {
console.log(err);
});
Ожидается обещание, возвращенное функцией.Вот почему вы получаете эту ошибку, которая не может вернуть неопределенную.Вам просто нужно добавить возврат в mySandwhich.
function mySandwich(data) {
return new Promise(function (resolve, reject) {
if (data > 5) {
resolve(data);
} else {
reject("no data");
}
});
}