Пожалуйста, помогите мне в этом вопросе.Угловая проверка 1.5 '' & binding 'is null
У меня есть угловая 1.5 компонента с помощью «& связывания»:
app.component('foo', {
bindings: {
message: '<'
onSomething: '&'
},
template:'<div>blah blah</div>',
controller: function() {
var ctrl = this;
ctrl.myOperation = function() {
ctrl.onSomething(); // <= look this!
}
}
});
И я хотел бы проверить, если «onSomething» определен.
В самом деле, если я использую его следующим образом:
<foo message='my message' on-something='doSomething()'></foo>
все в порядке.
Но если я использую его следующим образом:
<foo message='my message'></foo>
«onSomething» не должны быть определены, , но я не в состоянии проверить это!
Я пробовал:
if (ctrl.onSomething) ...
if (ctrl.onSomething == undefined) ...
if (ctrl.onSomething == null) ...
if (angular.isDefined(ctrl.onSomething)
все эти тесты всегда возвращаются «истина», даже когда не был принят обратный вызов.
Довольно уверен, что вы можете изменить '«&» 'в'«? &» ', И тогда вы увидите' ctrl.onSomething === null' – abyx