Angular ベースのフロントエンドに移行中です。とを使用することが良い解決策になる可能性があることがJavaScript
いくつかの研究でわかった後、いくつかのデータをディレクティブに渡す機能があります。しかし、私にはうまくいきません...Service
$broadcast
ここに私のコードがあります:
var app = angular.module('app', []);
app.factory('broadcastService', ['$rootScope',
function($rootScope) {
var factory = {};
factory.sendAjaxResut = function(name, obj) {
console.log(' -- $broadcast ');
$rootScope.$broadcast(name, obj);
}
return factory;
}
]);
app.directive("bill", [directive]);
function directive() {
return {
restrict: "E",
link: function($scope) {
$scope.$on("b1", function(e, a) {
console.log('-- directive')
});
}
}
}
データをサービスに渡すためのコード:
function _ajaxCUSTOMER(e) {
angular
.injector(['ng' ,'app'])
.get("broadcastService")
.sendAjaxResut("b1", e);
}
<button onclick="_ajaxCUSTOMER('foo')" >Send</button>
質問1:何がng
入っていますか.injector(['ng' ,'app'])
質問 2: 現時点ではコンソールのみが表示されます-- $broadcast
。ディレクティブでイベントをキャッチできない私のコードの問題は何ですか