SyntaxHighlighter

About Me

2015年12月3日 星期四

AngularJS 事件 $broadcast 與 $on 的使用方式

Broadcast

用途:跨 Controller 傳遞變數

Broadcast

用於事件發送

$scope.$broadcast

On

用於接收事件

$scope.$on

範例

app = angular.module('TestApp', []);

// 發送的 controller
app.controller('ctl', function($scope) {
    var myData = '123';
    $scope.$broadcast('EventName', myData);
});

// 接收的 controller
app.controller('ctl2', funciton($scope) {
    $scope.$on('EventName', function(event, args) {
        console.warn(args); // equals to '123'
    });
});

程式說明

  1. 宣告 app 為 angular 的 model
  2. 宣告兩個 controller 分別為 ctl 跟 ctl2
  3. 然後我希望可以將 ctl 的變數傳到 ctl2 這個 controller 下面
  4. EventName 可以自定成不同的事件名稱

沒有留言:

張貼留言