метрики.параметр $ emit / $broadcast wont pass
У меня есть следующее:
$rootScope.$on('setmoney',function (thisdata) {
console.log("setting money");
console.log("money is : " + thisdata);
});
И это где-то еще:
$rootScope.$broadcast('setmoney', {cash: 100000});
Как я могу убедиться, что я могу получить параметр cash в setmoney rootscope.по назначению?
Вывод после thisdata:
Object {name: "setmoney", targetScope: Scope, defaultPrevented: false, currentScope: Scope}
currentScope
:
null
defaultPrevented
:
false
name
:
"setmoney"
preventDefault
:
()
targetScope
:
Scope
__proto__
:
Object
1 ответ:
Первым параметром, который получает
$on
, является само событие. После этого первого параметра вы получаете остальные параметры, передаваемые вместе с событием.$rootScope.$on('setmoney',function (event, thisdata) { // You forgot to pass the 'event' parameter before the rest of parameters console.log("setting money"); console.log("money is : " + thisdata); });