我想知道如何防止在以下代码中复制代码。我复制了函数wishModel.createWish()
。复制代码的原因是:
感谢您帮助我改进代码!
if (copyExistsOnList) {
var copyWarningPopup = $uibModal.open({...});
copyWarningPopup.result.then(function (wish) {
wishModel.createWish(newWish, userID, userID, wish._id);
});
} else {
wishModel.createWish(newWish, userID, userID, wish._id);
}
答案 0 :(得分:4)
你可以为第二种情况做出立即解决的承诺,然后你总是有一个承诺,你可以把最后的ProductRewardPointController.php.php
链接到:
then
答案 1 :(得分:1)
您的代码在wish
上使用变量阴影:有一个声明作为函数签名的一部分,另一个声明是您未显示的外部作用域(或者使用全局命名空间)。这意味着有两个完全独立的变量。有些人认为这是一种不好的做法,因为在没有意识到你正在使用内部声明的情况下,可能会意外地在内部范围内编写代码。但我会假设这就是你想要的。
function createWish(wish) {
wishModel.createWish(newWish, userID, userID, wish._id);
}
if (copyExistsOnList) {
var copyWarningPopup = $uibModal.open({...});
copyWarningPopup.result.then(createWish);
} else {
createWish(wish);
}