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中使用ES6模块语法导入angular.IInjectorService_Angularjs_Typescript_Typescript1.5 - Fatal编程技术网

Angularjs 如何在TypeScript中使用ES6模块语法导入angular.IInjectorService

Angularjs 如何在TypeScript中使用ES6模块语法导入angular.IInjectorService,angularjs,typescript,typescript1.5,Angularjs,Typescript,Typescript1.5,如何使用中的ES6模块语法从文件导入angular.IInjectorService 编辑:我真正想知道的是如何使用IInjectorService,而不完全限定它。换句话说,我想这样做: class TestCtrl { constructor($injector: IInjectorService) {...} } 与此相反: class TestCtrl { constructor($injector: ng.auto.IInjectorService) {...} }

如何使用中的ES6模块语法从文件导入angular.IInjectorService

编辑:我真正想知道的是如何使用
IInjectorService
,而不完全限定它。换句话说,我想这样做:

class TestCtrl {
    constructor($injector: IInjectorService) {...}
}
与此相反:

class TestCtrl {
    constructor($injector: ng.auto.IInjectorService) {...}
}
目前,我正在以内部模块的方式进行。大概是这样的:

///<reference path="../path/to/typeDefinitions/angularjs/angular" />

import IInjectorService = ng.auto.IInjectorService;

class TestCtrl {
    constructor($injector: IInjectorService) {...}
}
class TestCtrl {
  myReference: any;
  constructor($injector: ng.auto.IInjectorService){
    myReference = $injector.get('name');
  }
}

它位于
auto
模块下,将被键入
IInjectorService

您可以这样使用它:

///<reference path="../path/to/typeDefinitions/angularjs/angular" />

import IInjectorService = ng.auto.IInjectorService;

class TestCtrl {
    constructor($injector: IInjectorService) {...}
}
class TestCtrl {
  myReference: any;
  constructor($injector: ng.auto.IInjectorService){
    myReference = $injector.get('name');
  }
}

以下工作将起作用:

import {auto as ngAuto} from "angular";
var foo:ngAuto.IInjectorService;

然而,我想说的是,
auto
是一个糟糕的决定(但是,
I
前缀也是如此)。当angular定义被编写时,TypeScript是新的,由于angular的流行,我们还没有机会将其重构为更好的版本。

请我和其他开发人员注意:确保包含参考
/
。如果IDE支持tsconfig.json,它将无法工作: