私は2つの指示文を持っており、1つの指示文の後に別の指示文に値を渡す必要があります。ブロードキャストのanglejを使用した指示通信への指示
最初のディレクティブは二ディレクティブは二ディレクティブイベントは$スコープのイベントリスニングのために
私は2つの指示文を持っており、1つの指示文の後に別の指示文に値を渡す必要があります。ブロードキャストのanglejを使用した指示通信への指示
最初のディレクティブは二ディレクティブは二ディレクティブイベントは$スコープのイベントリスニングのために
を聞いていない
var resultPage = angular.module('resultPageDirective',[]);
resultPage.directive('resultDirective',function(){
return {
restrict: 'EA',
scope: {},
replace: true,
link: function($scope, element, attributes){
},
controller: function($scope,$rootScope,$attrs,$http){
$scope.junkFiles = ["abc","xyz"];
$scope.$on("NEW_EVENT",function(event,data){ //listen to event
console.log(data);
});
},
templateUrl: 'app/views/resultPage/resultPage.tpl.html'
}
});
のように、あなたが
$on
を使用する必要があります見えます
var fileUpload = angular.module('fileUploadDirective',[]);
fileUpload.directive('fileUpload', function() {
return {
restrict: 'EA',
templateUrl: 'app/views/fileUpload/file-upload.tpl.html',
controller: fileUploadCtrl
}
});
fileUploadCtrl.$inject = ['$scope', '$rootScope', '$http','FileUploader'];
function fileUploadCtrl($scope, $rootScope, $http, FileUploader) {
var vm =this
vm.uploader.onBeforeUploadItem = function (item) {
$rootScope.$broadcast("NEW_EVENT",data); //send event
}
}
のように見えます代わりにon
$scope.$on("NEW_EVENT",function(event,data){ //listen to event
console.log(data);
});
だから問題または質問は何ですか?あなたが[ask] – charlietfl
の第2の指示イベントが動作していないことを確認するのに良い時期かもしれません。聞こえません – krs8888
2番目のディレクティブ(閉じ括弧がない)に構文エラーがありますが、投稿する前にコードを間違って編集したことがありますか?それ以外の場合は、コンソールにエラーがあり、指示文はコンパイルされません。あなたは$ rootScopeで聞いてみましたか?それは$ scopeで動作するはずですが、時にはそれに問題があります。 –