Javascript - 代码不会停止在那时

Sal*_*rni 2 javascript promise

我正在努力扩展我的知识(初学者阶段).基本上,我想使用promises向我的用户写新的电子邮件.我在我的游戏项目中有一些代码库,但我的功能并没有停止.这是应该写入数据库的函数:

changeEmailAddress(user, newEmail) {
       new Promise((resolve, reject) => {
            user.setEmail(newEmail);
            userRepository.saveUser(user).then(() => {
                return resolve();
            }).catch(e => {
                return reject(e);
            });
        }
    );
}
Run Code Online (Sandbox Code Playgroud)

如果我没有弄错的话,我应该如何使用它:

changeEmailAddress(user, "hello@there.com").then(function () {

    //it never comes in here :(
})
Run Code Online (Sandbox Code Playgroud)

我有类似的功能在用户工作,但我的功能是没有进入'然后'

小智 5

你提交了显式的promise构造函数反模式.你的代码不需要复杂

changeEmailAddress(user, newEmail) {
  user.setEmail(newEmail);
  return userRepository.saveUser(user);
}
Run Code Online (Sandbox Code Playgroud)

当然,确保不要忘记return!