美文网首页
AngularJs事件

AngularJs事件

作者: vanhukset | 来源:发表于2016-03-07 11:43 被阅读0次

    事件的传播

    冒泡

    要把事件沿着作用域链向上派送(从子作用域到父作用域),我们要使用$emit() 函数。

    // 发送一个事件
    // 我们的用户以当前user登录了
    scope.$emit('user:logged_in', scope.user);
    
    1. name(字符串)
      要发出的事件名称。
    2. args(集合)
      一个参数的集合,作为对象传递到事件监听器中。

    向下传播 $broadcast

    // 等等,购物车去结账了
    // 当购物车在结账的时候
    // 下面所有的指令都应当禁用自己
    scope.$broadcast('cart:checking_out', scope.cart);
    
    1. name(字符串)
      要发出的事件名称。
    2. args(集合)

    事件的监听

    $on()方法

    scope.$on('$routeChangeStart',
     function(evt, next, current) {
     // 一个新的路由被触发了
    });
    

    事件对象

    事件对象有以下属性

    targetScope(作用域对象)

    这个属性是发送或者广播事件的作用域。

    currentScope(作用域对象)

    这个对象包含了当前处理事件的作用域。

    name(字符串)

    这个字符串是触发之后,我们正在处理的事件名称。

    stopPropagation(函数)

    /////
    我们用$emit() 调用的有好几个事件,它们把事件往上发, 更多调用的是$broadcast() 事件。

    相关文章

      网友评论

          本文标题:AngularJs事件

          本文链接:https://www.haomeiwen.com/subject/eqiakttx.html