1
我正在$我的$ scope.randomObjects中觀看我的指令。如果函數不穩定,$ watch將拋出錯誤,我認爲getDesiredAmountOfObjects中的curried函數是冪等的。在這裏,ngResource是我無法看到的對象嗎? 我該如何解決這個問題?此外,desiredAmount現在是固定的。
這裏是我的控制器片段:
..
var getDesiredAmountOfObjects = function (objects, randomObjects) {
return function (desiredAmount) {
var amount = desiredAmount || 1;
if (amount >= objects.length) {
return objects;
}
var randoms = randomObjects.slice(0, amount);
//logged objects are always the same in each $digest loop.
//including the $$hashKey
console.log(random);
return randoms;
};
};
//this will initialized only once in controller
ObjectRes.query(function(data) {
$scope.objects = data;
var randomObjects = [];
angular.extend(randomObjects, data);
randomObjects.sort(function() {
return 0.5 - Math.random();
});
$scope.randomObjects = getDesiredAmountOfObjects($scope.objects, randomObjects);
});
..
非常感謝您的時間和知識!這很好用! 我覺得這種方式太多,沒有看到明顯的。 TIL角正在觀察實際的對象,而不僅僅是$$ hashKey。 – pasuna
是的,我一直陷入這個問題。我在功能上編寫我的代碼,並且我不認爲維護Angular的監視系統所需的參照完整性。 –