我有一个AngularJS应用程序,它有一个shell页面。 Shell页面有一个包含位置列表的下拉列表。在其中一个内部页面中,我具有添加新位置的功能。添加新位置后,它应立即显示在shell页面的位置下拉列表中?我如何实现这一目标?
我知道我应该尝试角度观察者。实际上,系统中已存在相同的功能。还有另一个客户端选择下拉列表,当客户端更改时,我广播了一个事件,因此重新填充了位置下拉列表。我不确定在添加新位置时如何做同样的事情。
答案 0 :(得分:1)
当添加位置时,您可以简单地将事件广播到父上下文
$scope.addLocation = function () {
// Add location code here
$rootScope.$broadcast('location.added', data);
};
然后在父控制器上:
$scope.$on('location.added', function (event, data) {
// Add new location to dropdown
};