$scope.saveStats = function () {
$http({
method: "post",
url: "save.php",
data: $scope.info
}).success(function () {
console.log($scope.info);
})
};
window.onbeforeunload = $scope.saveStats();
此代码没有按照我的预期执行。它只是在加载页面时触发saveStats()
。当我退出页面时,它不会触发saveStats()
。
我在角度控制器中写了这个。 我对结果很困惑......
答案 0 :(得分:4)
window.onbeforeunload = $scope.saveStats();
^^^
将()
添加到saveStats
的末尾,即可立即执行功能。您要做的是将saveStats
的引用传递给onbeforeunload
,如下所示:
window.onbeforeunload = $scope.saveStats;
答案 1 :(得分:0)
试试这个:
window.onbeforeunload = $scope.saveStats;
您只是试图通过引用传递函数,而不是执行它,因此删除触发该函数的双括号。