As shown in the picture, if I push the array directly, the page can be refreshed normally. But if I directly assign a new array to $scope.items, the page will not be refreshed.
PHPz2017-05-15 16:59:36
The answer is in the comments
You are using Angular, use promises:
// in your service
function getSp() {
return $http.get(apiHost)
}
// in your controller
$scope.items = ckGL.getSp().then(response => response[0])
That’s what I mean, you can add logs or something depending on the situation
PHP中文网2017-05-15 16:59:36
The main topic is to transfer the scope of the Controller to the Service. It is better to get the methods of the Service to the Controller.
For example:
$scope.getSp = ckGl.getSp
$scope.getSp($scope.items)
天蓬老师2017-05-15 16:59:36
After assigning the value, console the value of $scope.items to see if you have paid the wrong value... It is difficult to know where your problem is just by writing it like this. Normally it will trigger rendering
phpcn_u15822017-05-15 16:59:36
Because in js, object assignment is a reference, ng monitoring can be understood as address monitoring, so if the original array remains unchanged, ngrepeat will not be triggered