0

私は次のJavaScriptを持っています:

var myApp = angular.module('myApp', []);

myApp.factory( "TestService", function() {
    return {
        clickString: "click me",   
        clickStringProxy: this.clickString
    }
});

function MyCtrl($scope, TestService) {
    $scope.clickString = TestService.clickString;
    $scope.clickStringProxy = TestService.clickStringProxy;
}

上記は、 (基本的な「this」を介して)TestService.clickStringProxyアクセスしようとして失敗した試みです。TestService.clickString

JsFiddle: http://jsfiddle.net/eDb2S/96/

サービス内の関数が相互にアクセスできるようにするにはどうすればよいですか?

状況を改善するためにさまざまな試みを試みましたが、役に立ちませんでした。

4

1 に答える 1

1

サービス オブジェクトを宣言し、それを操作して返します。

myApp.factory( "TestService", function() {
    var service=  {
        clickString: "click me"
    }
    service.clickStringProxy = service.clickString;
    return service;
});

http://jsfiddle.net/eDb2S/97/

于 2013-07-13T06:03:28.417 に答える