В AngularJS вы можете использовать механизмы вещания в события, $ Broadcast, $ Emit, $ On для общения между различными областями.
представлять:
Целью трансляции $ состоит в том, чтобы распространять события от родительского масштаба до детей, включая себя. Формат заключается в следующем: $ Broadcast (EventName, Args)
Цель $ Emit - распространять события от масштаба ребенка до родителей, в том числе и сама до корневого масштаба. Формат заключается в следующем: $ Emit (EventName, Args)
$ ON используется для мониторинга событий, распространяемых от детей или родителей, и соответствующих данных по объему. Формат заключается в следующем: $ (событие, данные)
В приведенном выше описании EventName - это имя события, которое необходимо контролировать, событие параметра в методе $ на методе является соответствующим объектом события, а данные являются распространенными данными.
Параметр события в методе $ имеет следующие свойства и методы
Атрибуты события/Метод функциональный описание
| Свойства/методы события | Функциональное описание |
|---|---|
| Event.TargetScope | Получите сферу действия события распространения |
| Event.currentscope | Получите масштаб полученного мероприятия |
| Event.name | Название события спреда |
| Event.stoppropagation () | Предотвратить события от распространения пузырьков, действительных только в событиях $ Emit |
| Event.preventDefault () | Предотвратить события распространения |
| Event.DefaultPrevented | Вернуть True, если вызвано событие предотвращения |
Код:
<! Doctype html> <html ng-app = "myApp"> <Head> <meta http-equiv = "content-type" content = "text/html; charset = utf-8"/> <title> </title> <meta charset = "utf-8"/> <script src = "ajjs/angs/angs. var myApp = angular.module ("myApp", []); // Контроллер self myApp.controller ("self", function ($ scope, $ window) {// событие размножения кнопки $ scope.toparent = function () {// Зарегистрировать событие, которое распространяется вверх, EventName: 'From Self', Data: OneObject $ Scope. $ EMIT («From SEFT», {DivName: «SEEP»; $ scope.tochild = function () {// Зарегистрировать событие, которое распространяется вниз, EventName: «Из себя», Data: OneObject $ Scope. $ window.alert («Текущий узел» + event.currentscope.name + "перехватывает события из" + data.divname + ":" + event.name + ", его функция" + data.description); // Контроллер родитель myApp.controller («parent», function ($ scope, $ window) {$ scope.name = "parent"; // $ on используется для событий $ scope. $ On ("fromset", function (событие, данные) {$ window.alert ("current Node" + event.currentscope.name + ", переполненные события из" + data.divn ". Функция - « + data.description);}); $ scope. $ on (" fromChild ", function (event, data) {$ window.alert (" текущий узел " + event.currentscope.name +", перехватываемые события из " + data.divname +": " + event.name +", его " + data.description); // Контроллер Child MyApp.controller («Ребенок», Функция ($ Scope, $ window) {$ scope.name = «ребенок»; // $ on используется для перехвата событий из родителей $ scope. $ On («from Self», функция (событие, данные) {$ window.alert («текущий Node» + Event.currentscope. event.may + ", его функция" + data.description); </script></head><body> <form name="test"> <div ng-controller="Parent"> Here is the parent Div <div ng-controller="Self"> Here is the child SelfDiv <input type="button" ng-click="toParent()" value="Propagate event to ParentDiv" /> <input type="button" ng-click="toChild()" value="Propagate Событие Childdiv "/> <div ng-controller =" kild "> вот дочерний childdiv <input type =" ng-click = "totop ()" value = "uepload"/> </div> </div> <div ng-controller = "borther"> Bortherdiv </div> </div> </ht> </ht> </ht> </ht> </ht> </ht> </ht bortherdiv </div> </ht> </ht bortherdiv </div> </ht> </ht borthКод
Эффект:
Другие свойства:Вышеупомянутое событие транслируется в AngularJS - полный анализ трансляции $, $ Emit, $ on - это все контент, которым я делюсь с вами. Я надеюсь, что вы можете дать вам ссылку, и я надеюсь, что вы сможете поддержать Wulin.com больше.