Angularjs $destroy是$broadcast(名称,args)的对立面吗?
正如标题所要求的那样。它们是相反的吗? 另外,如何根据事件名称从Angularjs $destroy是$broadcast(名称,args)的对立面吗?,angularjs,angularjs-scope,Angularjs,Angularjs Scope,正如标题所要求的那样。它们是相反的吗? 另外,如何根据事件名称从$rootScope中删除事件 一个简单的例子也很受欢迎。$destroy既是每个作用域将侦听的事件,也是作用域上手动触发该事件的方法 它主要用于在作用域被破坏时执行您想要的任何操作。范围被破坏的实例有: 通过ng view切换视图,以前的控制器作用域将被销毁 一个指令被实例化,该元素被从DOM中删除,这适用于angular框架和custom中的所有指令 而另一方面,$broadcast仅用于触发当前级别或子级别范围内的事件 它们并
$rootScope
中删除事件
一个简单的例子也很受欢迎。
$destroy
既是每个作用域将侦听的事件,也是作用域上手动触发该事件的方法
它主要用于在作用域被破坏时执行您想要的任何操作。范围被破坏的实例有:
$broadcast
仅用于触发当前级别或子级别范围内的事件
它们并非相反。
关于如何从$rootScope中删除事件的第二个问题
假设您已经优化了事件侦听器:
$rootScope.$on("myEvent", function () {
//some code
});
每个事件侦听器返回一个取消注册
函数。因此,您可以使用以下内容:
var removeMyEvent = $rootScope.$on("myEvent", function () {
//some code
});
无论何时,只要调用取消注册
函数,就可以删除事件侦听器
removeMyEvent();
那就应该成功了 $destroy
既是每个作用域将侦听的事件,也是作用域上手动触发该事件的方法
它主要用于在作用域被破坏时执行您想要的任何操作。范围被破坏的实例有:
通过ng view切换视图,以前的控制器作用域将被销毁
一个指令被实例化,该元素被从DOM中删除,这适用于angular框架和custom中的所有指令
而另一方面,$broadcast
仅用于触发当前级别或子级别范围内的事件
它们并非相反。
关于如何从$rootScope中删除事件的第二个问题
假设您已经优化了事件侦听器:
$rootScope.$on("myEvent", function () {
//some code
});
每个事件侦听器返回一个取消注册
函数。因此,您可以使用以下内容:
var removeMyEvent = $rootScope.$on("myEvent", function () {
//some code
});
无论何时,只要调用取消注册
函数,就可以删除事件侦听器
removeMyEvent();
那就应该成功了 $destroy
既是每个作用域将侦听的事件,也是作用域上手动触发该事件的方法
它主要用于在作用域被破坏时执行您想要的任何操作。范围被破坏的实例有:
通过ng view切换视图,以前的控制器作用域将被销毁
一个指令被实例化,该元素被从DOM中删除,这适用于angular框架和custom中的所有指令
而另一方面,$broadcast
仅用于触发当前级别或子级别范围内的事件
它们并非相反。
关于如何从$rootScope中删除事件的第二个问题
假设您已经优化了事件侦听器:
$rootScope.$on("myEvent", function () {
//some code
});
每个事件侦听器返回一个取消注册
函数。因此,您可以使用以下内容:
var removeMyEvent = $rootScope.$on("myEvent", function () {
//some code
});
无论何时,只要调用取消注册
函数,就可以删除事件侦听器
removeMyEvent();
那就应该成功了 $destroy
既是每个作用域将侦听的事件,也是作用域上手动触发该事件的方法
它主要用于在作用域被破坏时执行您想要的任何操作。范围被破坏的实例有:
通过ng view切换视图,以前的控制器作用域将被销毁
一个指令被实例化,该元素被从DOM中删除,这适用于angular框架和custom中的所有指令
而另一方面,$broadcast
仅用于触发当前级别或子级别范围内的事件
它们并非相反。
关于如何从$rootScope中删除事件的第二个问题
假设您已经优化了事件侦听器:
$rootScope.$on("myEvent", function () {
//some code
});
每个事件侦听器返回一个取消注册
函数。因此,您可以使用以下内容:
var removeMyEvent = $rootScope.$on("myEvent", function () {
//some code
});
无论何时,只要调用取消注册
函数,就可以删除事件侦听器
removeMyEvent();
那就应该成功了