我正在使用AngularJS 1.4.3和typescript 1.5
使用指令我可以使用controllerAs将隔离范围属性绑定到控制器并设置bindToController: true
但是,我可以不用表达式做同样的事情吗?
例如,这样的事情很好:
this.scope = {
name: '@'
};
我可以使用controllerAs名称在模板中引用name,没问题。
但这并不是:
this.scope = {
name: '@',
someMethod: '&'
};
我无法使用controllerAs语法调用someMethod。
不允许以这种方式使用表达式吗?文档没有指定,我发现的所有示例只是重复使用@ binding的相同示例。
我希望someMethod会附加到控制器上并且可以使用。
有点像这样:
<div data-my-directive data-some-method="parentCtrl.testMethod(val)"></div>
并在我的指令中
public template = "<div ng-click='myController.someMethod({val: 1234})'>NAME: [{{myController.name}}]</div>";