gpt4 book ai didi

javascript - AngularJS $广播

转载 作者:行者123 更新时间:2023-11-28 12:21:46 28 4
gpt4 key购买 nike

请帮我解决我的问题。当我从父 Controller 调用并在子 Controller 中捕获时,为什么 $broadcast 函数不起作用?

<!DOCTYPE html>
<html lang="en" ng-app="app">
<head>
<meta charset="UTF-8">
<title></title>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.3/angular.min.js"></script>
<script>
var app = angular.module('app', []);
app.controller('ctrl1',
function ($scope) {
$scope.$broadcast('parent', 'Some data');
});

app.controller('ctrl2',
function ($scope) {
$scope.$on('parent', function (event, data) {
console.log(data); // 'Some data'
});
});
</script>
</head>
<body>
<div ng-controller="ctrl1">
<div ng-controller="ctrl2">
</div>
</div>
</body>
</html>

最佳答案

<!DOCTYPE html>
<html lang="en" ng-app="app">
<head>
<meta charset="UTF-8">
<title></title>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.3/angular.min.js"></script>
<script>
var app = angular.module('app', []);
app.controller('ctrl1',
function ($scope) {
$scope.$on("ready",function(){
$scope.$broadcast('parent', 'Some data');
});

});

app.controller('ctrl2',
function ($scope) {
$scope.$on('parent', function (event, data) {
alert(data); // 'Some data'
});
$scope.$emit('ready');
});
</script>
</head>
<body>
<div ng-controller="ctrl1">
<div ng-controller="ctrl2">
</div>
</div>
</body>
</html>

关于javascript - AngularJS $广播,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36473445/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com