Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 使用typescript创建$provider_Angularjs_Typescript - Fatal编程技术网

Angularjs 使用typescript创建$provider

Angularjs 使用typescript创建$provider,angularjs,typescript,Angularjs,Typescript,我正在尝试使用从angularjs应用程序移植的一个相当简单的方法创建一个$provider 原著 (function(){ var app = angular.module('app',[]); app.config(function($provide) { $provide.provider('foo',function(){ this.$get = function(){ var foo

我正在尝试使用从angularjs应用程序移植的一个相当简单的方法创建一个$provider

原著

(function(){
    var app = angular.module('app',[]);

    app.config(function($provide) {

         $provide.provider('foo',function(){
              this.$get = function(){
                  var foo = 'foo';
                  return {
                      foo:foo
                  }
              }
         }
    }  

}());
这很直截了当。但是,当我尝试在typescript中实现它时,我在
this上得到一个错误。$get
->
属性get不存在

export interface IFooConfig {
    foo:string;
}

export class FooConfig implements IFooConfig {

    static $inject = ["$injector","$provide"];
    constructor(private $provide : angular.auto.IProvideService,
                public foo:string
    ) {   

         $provide.provider('foo',() =>{
             this.$get = () => {  // error here on this.$get
                 this.foo = "foo";

                 return {
                     foo:this.foo
                 }
             }
         })
      }

   }

   angular.module("app").config(FooConfig);
}

我觉得这应该是可行的,否则我在做一些根本不正确的事情

在胖箭头函数
()=>…
中,
这个
的值是从它的包含范围中带出来的,但是provider函数传递了一个完全不同的上下文。第一步,把这行恢复到<代码>。提供者(Foo),函数()…{/Cord>,第二步——考虑同样的原因需要进一步的改变。显然,我没有正确理解FAT箭头函数。谢谢@ DCoder。