我使用的角度,並添加index.html中的按鈕是什麼在角的區別:當在不同的文檔段執行同樣的功能
<button ng-controller = "studentCtrl" ng-click="$emit('update')">refresh</button>
點擊時,該模型已被更新,但認爲不是,即使$digest
已執行。當我在studentCtrl
的templateURL
中添加相同的按鈕時,它工作正常。我嘗試將按鈕移動到ng-view
div
但它仍然失敗,所以任何人都可以告訴我區別嗎?
的templateURL
爲studentCtrl
是
<tr ng-controller="studentCtrl" ng-repeat="student in students">
<td>{{student.name}}</td>
<td><button ng-click="$emit('update')">refresh</button></td>
</tr>
和studentCtrl
是
.controller('studentCtrl', ['$scope', 'baseDataUrl', '$http', '$timeout',
function($scope, baseDataUrl, $http, $timeout) {
$scope.update = function() {
$http.get(baseDataUrl).then(function(res) {
$scope.students = res.data;
});
};
$scope.update();
//when switch to student app, get all students data first
$scope.$on("update", function() {
//for test
$scope.students = [];
});
}]);
你可以在這裏閱讀更多的http:// stackoverflow.com/questions/14502006/working-with-scope-emit-and-on –