programing

$broadcast로 오브젝트를 보내려면 어떻게 해야 하나요?

instargram 2023. 3. 8. 20:35
반응형

$broadcast로 오브젝트를 보내려면 어떻게 해야 하나요?

다음과 같은 것이 있습니다.

$scope.$watch('tableForm.$pristine', function (newValue) {
    $rootScope.$broadcast("tableDataUpdated", 
        { state: $scope.tableForm.$pristine });
});

저도 시도했습니다.

$scope.$watch('tableForm.$pristine', function (newValue) {
    var tableForm = { pristine: $scope.tableForm.$pristine };
    $rootScope.$broadcast("tableDataUpdated", tableForm);
});

표 형식$pristine상태가 변화하고 값이 변화합니다.$scope.tableForm.$pristine로 설정되어 있다.False이 메시지는 브로드캐스트입니다.

그러나 메시지를 수신하려고 하면 "state" 값이 정의되지 않습니다.

$rootScope.$on("tableDataUpdated", function (args) {
    alert(args.state);
});

저도 시도했습니다.

$rootScope.$on("tableDataUpdated", function (args) {
    alert(args.tableForm);
});

그래도 물건을 보내서 받을 수 없을 것 같아요.

왜냐하면 청취자 함수는 두 개의 인수가 전달되기 때문입니다.event,그리고.args각진 문서를 참조해 주세요.

시험:

$rootScope($rootScope 。$on("tableDataUpdated", 함수(이벤트, arg) {alert(s.state);
});

언급URL : https://stackoverflow.com/questions/17779745/how-can-i-send-an-object-with-broadcast

반응형