関数を使用してコントローラーを定義します。
myApp.controller "SomeCtrl", ($scope) ->
@go = (text) ->
console.log(text)
@go2 = () ->
??go('test')
「??」私が苦労していることです。
これらの関数を $scope に割り当てると、 $scope.go() をそのまま使用できます。このシナリオで同じことを達成するにはどうすればよいですか?
関数を使用してコントローラーを定義します。
myApp.controller "SomeCtrl", ($scope) ->
@go = (text) ->
console.log(text)
@go2 = () ->
??go('test')
「??」私が苦労していることです。
これらの関数を $scope に割り当てると、 $scope.go() をそのまま使用できます。このシナリオで同じことを達成するにはどうすればよいですか?
なぜそれがうまくいかないのかわかりません。プレーンな Javascript を使用すると、機能します。ここにフィドルがあります:http://jsfiddle.net/dafoo/K7aPq/2/
function MyCtrl($scope) {
function foo1 (argument) {
console.log('foo1');
console.log(argument);
};
function foo2 () {
console.log('foo2');
foo1('test');
};
foo2();
}
この問題は特に AngularJS のコントローラーとディレクティブで発生します。this
あらゆる種類の依存性注入オプションがあるのに、なぜハイジャックを選択したのかわかりません... やり過ぎです。