【发布时间】:2016-08-17 06:38:57
【问题描述】:
这里是相关的sn-p代码:
$scope.newLike = LikeFactory.newLike;
$scope.newDislike = LikeFactory.newDislike;
$scope.updateLike = LikeFactory.updateLike;
$scope.updateDislike = LikeFactory.updateDislike;
$scope.vote = function(sockId, nnew, update) {
if (!$scope.verifyUser) $scope.alert("Please log in to like a sock!");
if (!$scope.like.like && !$scope.like.dislike) {
return nnew(sockId).then(function(vote) { $scope.vote = vote; });
} else {
return update(sockId).then(function(update) { $scope.vote = update; });
}
}
我在 html 中使用 ng-click="vote(sock.id, newLike, updateLike)" 或 ng-click="vote(sock.id, newDisike, updateDislike) 将此函数称为 $scope.vote " 是否在喜欢与不喜欢按钮上。调用按钮在第一次喜欢和更新时工作正常,一旦有一个特定的独特袜子/用户组合的“喜欢”实例,但在一次“更新”后我收到错误:
angular.js:13642 TypeError: v2.vote is not a function
我是否需要触发 $digest 才能使函数继续在 $scope 中?它在使用后会以某种方式脱离 $scope 吗?这对我来说似乎是一个奇怪的错误。
编辑:呃!来晚了,谢谢解答!
【问题讨论】:
标签: javascript angularjs