, поэтому цель async / await состоит в том, чтобы не блокировать ничего и возвращать объект Promise , который можно использовать для воздействия на возвращаемое.
ItТрудно точно знать, что вы планируете делать с вашей моделью после назначения пароля, но я бы порекомендовал вам назначить пароль для вашей модели вне текущей функции с помощью чего-то вроде:
const _sodium = require('libsodium-wrappers');
const generatePassword = async () => {
await _sodium.ready;
const sodium = _sodium;
// Not sure where you have got data from, could be passed in locally.
return sodium.crypto_pwhash_str(Utils.urldecode(data.password), 7, 677445);
}
generatePassword()
.then((password) => {
this._modelUser.password = password;
})
.catch((error) => console.log('error: ', error))
Вы можетеконечно, разделить это еще больше, чтобы быть более функциональным.