我用一个函数定义一个控制器:
myApp.controller "SomeCtrl", ($scope) ->
@go = (text) ->
console.log(text)
@go2 = () ->
??go('test')
'??'是我挣扎的。
如果我将这些函数分配给$ scope,那么可以使用$ scope.go()。 在这种情况下,我怎样才能实现相同的目标?
答案 0 :(得分:0)
不确定为什么它不适合你。如果我使用普通的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();
}
答案 1 :(得分:0)
在AngularJS中,控制器和指令中特别出现此问题。不确定为什么他们选择劫持this
,当有各种依赖注入选项时......过度杀伤。