如何将数据从主控制器发射到角度视图控制器
How can I emit data from main controller to view controller in angular?
我想在angular中创建一个应用程序。
我有视图外的主控制器和视图的特定控制器。
如何将数据从主控制器发送到View的控制器(主控制器)?
我想在从主控制器发出数据后执行视图控制器中的功能。
我尝试过使用-$emit
和$on
,但在我的情况下,它不起作用。
例如,我的代码:https://jsfiddle.net/32hb3odk/7/
Index.html
<div ng-app="myApp">
<div class="head-part" ng-controller="MainController as main">
<h1>Header</h1>
<input ng-click="main.EmitData()" type="button" value="Emit data to child control" />
<br /> <br />
</div>
<div class="view-part">
<h2>View:
</h2>
<div ng-view></div>
</div>
<script type=text/ng-template id=home.html>
<div>{{home.title}}</div>
</script>
</div>
Javascript:
angular.module('myApp', ['ngRoute'])
.config(['$routeProvider', function ($routeProvider) {
$routeProvider
.when('/', {
controller: 'HomeController',
controllerAs: 'home',
templateUrl: 'home.html'
})
.otherwise('/');
}]);
angular.module('myApp').controller('HomeController', ['$scope',function ($scope) {
var vm = this;
vm.title = 'Homepage';
$scope.$on('EmitMain', function(){
alert("GetDataFromMainController");
});
}]);
angular.module('myApp').controller('MainController', ['$scope', function ($scope) {
var vm = this;
vm.EmitData = function(){
$scope.$emit('EmitMain');
}
}]);
这是因为$emit
在树上。当它向下遍历树时,请使用$broadcast
。
相关文章:
- 在指令控制器中使用$attrs时出现问题
- 有没有任何方法可以将控制器从文件加载到ui路由器$stateProvider中
- 从控制器返回后Ajax启动事件激发
- 获取@ResponseBody的一部分作为主干和Spring MVC控制器之间的参数
- 如何在单击复选框后调用控制器方法
- 在控制器和数据对象之间同步数据
- 将Javascript数组发送到控制器ASP.NET MVC
- 角度控制器结构
- 如何在Jquery中发布后将值从视图返回到控制器
- NodeJS-readline暂停和恢复事件发射器(逐行读取)
- 将值从html传递到AngularJS控制器
- 从我的控制器返回一个不同于200的代码以触发ajax错误,这被认为是一种好的做法吗
- 从控制器继承了隔离的作用域以生成可重用的指令
- Flash Uploadify在调用我的MVC控制器时没有保留会话/授权
- 多次发射多个可观察器的问题
- 为什么不't我的变量在我的控制器中填充后在我的视图中呈现
- Nodejs API控制器,用于在API之间切换
- 如何在Angular单元测试中从另一个控制器的rootScope将方法添加到rootScope中
- 如何将数据从主控制器发射到角度视图控制器
- 控制器生命周期和发射/广播