Я пытаюсь понять блок кода здесь, который я считаю избыточным кодом, который можно удалить, но, возможно, я ошибаюсь, вот код:
return(
myModule.getSomething(args.url)
.then(stream => module.uploadData({
param1: args.param1,
param2: args.param2,
param3: stream,
}))
.then(() => myBroker.dispatch({
queueUrl: myQueueUrl,
payload: JSON.stringify(args.payload),
})
)
.then(msgInfo => {}) . //This line can be removed right?
.catch(error => {
myBroker.dispatch({
queueUrl: anotherQueueUrl,
payload: JSON.stringify({ type: 'error', payload: `[ERROR] ${error}` }),
});
throw error;
})
);
Я считаю, что строка:
.then (msgInfo => {})
можно удалить, верно?функция стрелки ничего не делает, msgInfo - это то, что возвращает предыдущее предложение then после вызова myBroker.dispatch, и из-за этого я могу удалить строку, которую я упомянул правильно?
Может кто-нибудь дать мне четкое объяснениеэтот?Почему эта линия существует?Или объясните, почему я не могу удалить его?
PS: функция getSomething и uploadData возвращает обещание, функция отправки Я не так уверен, потому что это выглядит так:
return(
client.sendMessage(parameters).promise()
.then(data => data)
);
Он возвращает только объект, который является «данными», верно?или он также возвращает обещание, потому что в конце он содержит предложение then?
Эта синтаксическая нотация с использованием нескольких функций then и стрелки сбивает меня с толку,
Заранее большое спасибо!