Когда я вызываю $ scope.remove в html, он вызывает функцию rerender, а затем автоматически обновляет данные в html.Почему угловая не реиндеринг?
Когда я вызываю $ scope.post, он вызывает функцию rerender и записывает новые данные. Однако он не автоматически перезагружает html. Мне нужно обновить страницу, чтобы просмотреть обновленные данные.
Я искал использование $ apply, но я озадачен тем, как это обновление для удаления, но не сообщение.
Контроллер:
var updateData = function (resp){
$scope.data = resp.data;
console.log($scope.data);
}
$scope.getEntries = function(){
return $http({
method: 'GET',
url: '/allEntries'
}).then(updateData)
};
$scope.post = function(){
return $http({
method: 'POST',
url: '/newEntry',
data: $scope.entry
}).then(function (resp){
$scope.getEntries();
})
};
$scope.remove = function (opp){
return $http({
method: 'POST',
url: '/deleteEntry',
data: opp
}).then(function(){
$scope.getEntries();
})
}
Я думаю, это может быть что-то делать с наличием функций, называемых в различных HTML-файлов, но так как они оба имеют один и тот же контроллер, я думаю, что бы это не было бы случай.
<html>
<body ng-app = "app">
<div ng-controller = "controller">
<form ng-submit = "post()">
<input type="submit" value="Submit">
</form>
</div>
</body>
</html>`
<html>
<body ng-app = "app">
<div ng-controller = "controller">
<ul>
<li ng-repeat = "job in data" ><input type = "button" ng-click = "remove(opp)" value="Delete"></li>
</ul>
</div>
</body>
</html>`