ReferenceError: toggleTrash is not defined
ReferenceError: toggleTrash is not defined
我的控制器中有以下功能。当我尝试添加 $timeout 时,我收到参考错误,因为切换功能未定义。我是 angular 的新手。有谁知道为什么会这样?
$scope.toggleTrash = function(card) {
card.clickedtrash = card.clickedtrash ? false : true;
if (card.clickedtrash == true) {
$timeout(toggleTrash(card), 3000);
}
}
Angular 的 $timeout 只是 window.setTimeout 的包装器。您不能按照您尝试的方式将变量与函数一起传递。你只能这样做:
$timeout(toggleTrash, 3000);
也许可以尝试创建一个匿名闭包,以便在回调执行时保留 card
的值。所以:
$timeout(function() {
toggleTrash(card);
}, 3000);
您收到引用错误是因为您不应使用 toggleTrash
,而应使用 $scope.toggleTrash
。
并使用 $timeout
如:
$timeout(function () {
$scope.toggleTrash(card);
}, 3000);
我是这样回答的:
$scope.toggleTrash = function(card) {
card.clickedtrash = true;
$timeout(function(){card.clickedtrash = false}, 4000);
};
我的控制器中有以下功能。当我尝试添加 $timeout 时,我收到参考错误,因为切换功能未定义。我是 angular 的新手。有谁知道为什么会这样?
$scope.toggleTrash = function(card) {
card.clickedtrash = card.clickedtrash ? false : true;
if (card.clickedtrash == true) {
$timeout(toggleTrash(card), 3000);
}
}
Angular 的 $timeout 只是 window.setTimeout 的包装器。您不能按照您尝试的方式将变量与函数一起传递。你只能这样做:
$timeout(toggleTrash, 3000);
也许可以尝试创建一个匿名闭包,以便在回调执行时保留 card
的值。所以:
$timeout(function() {
toggleTrash(card);
}, 3000);
您收到引用错误是因为您不应使用 toggleTrash
,而应使用 $scope.toggleTrash
。
并使用 $timeout
如:
$timeout(function () {
$scope.toggleTrash(card);
}, 3000);
我是这样回答的:
$scope.toggleTrash = function(card) {
card.clickedtrash = true;
$timeout(function(){card.clickedtrash = false}, 4000);
};