为了在
控制器之间传递变量的变化,需要在广播中传递和以角方式发射$
方法,而$ $用于接收事件和响应。
广播被
翻译成无线电,即上级通过较低的水平。
示例代码:
Angular.module(的应用
控制器(子)
美元美元范围。(parentchange
$scope.change = changed;
scope.child美元= M;
})
})
控制器(父
美元。
如果(n = o){
返回;
}
美元美元范围。广播(parentchange
})
})
父级:{父} }
{更改}子:{ } }
使用$看监控亲值变化的代码,当变化将从parentchange事件广播传递
参数(
输入值)的使用范围,美元。美元元域(parentchange,Handler)接收parentchange事件,然后接受输入值和指定子域孩子变,完成价值的转移。
uff1a效应
发射被
转换为发射,也就是说,低层通过上级。
示例代码:
Angular.module(的应用
控制器(父
美元美元范围。(childchange
scope.change美元=改变;
scope.parent美元= M
})
})
控制器(子)
范围$
如果(n = o){
返回;
}
美元美元范围。发出(childchange
})
})
{更改}父级:{父} }
子:{ } }
当孩子的价值变化的因素,childchange将发给上级的事件,父元素的监测由美元(childchange)将响应传递参数分配给母
公司,整个过程类似于广播。
uff1a效应
在上述所有域中都存在一个层次关系,如果要
执行相同级别的
作用域该怎么办呢
我们可以使用
服务来广播事件:
Angular.module(的应用
服务(myservive 。
返回{
更改:
函数(n){
rootscope美元。美元的广播(valuechange
}
}
})
控制器(Bro1 。
美元美元范围。看(中
MyServive.change(N);
})
美元美元范围。(valuechange
console.log(中);
scope.value1美元= M;
})
})
控制器(BrO2
美元美元范围。看(value2
MyServive.change(N);
})
美元美元范围。(valuechange
console.log(定);
scope.value2美元= M;
})
})
value1:
value2:
我们使用rootscope美元的服务,都属于它的范围,在此基础上,我们可以在根域广播事件,rootscope美元。美元的广播(valuechange,N);当改变方法,每个孩子在价值范围的变化,我们将在同一时间播出事件,每个领域,监测美元(valuechange )的事件,并做出相应
处理,从而实现子域名价值的
功能将被转移到兄弟的范围。
效果是:
以上是本文的全部内容,希望能对您有所帮助,希望大家多多
支持。