Есть идеи, как реализовать это более элегантно, используя asyn c, который возвращает обещание вместо обратных вызовов?
const webShare = (data) => {
if (navigator.share) {
navigator.share({
title: data.title,
text: data.text,
url: data.url
}).then(() => {
if (typeof data.successCallback === 'function') {
data.successCallback();
}
}).catch(console.error);
} else {
if (typeof data.noSupportCallback === 'function') {
data.noSupportCallback();
}
}
}
Пример использования
webShare({
url: window.location.href,
noSupportCallback: this.handleCopyDesktop
});