模块“ng”没有导出成员“IDirective”

Posted

技术标签:

【中文标题】模块“ng”没有导出成员“IDirective”【英文标题】:Module 'ng' has no exported member 'IDirective' 【发布时间】:2017-03-27 07:43:10 【问题描述】:

我正在用 TypeScript 实现 Angular 1 指令。一切看起来都很好,可以编译,但我在 Visual Studio Code 编辑器中收到以下错误:

模块“ng”没有导出成员“IDirectiveFactory”。

这是我的代码:

class MyDirective implements ng.IDirective 

  constructor(a, b) 
   ......
  

  static factory(): ng.IDirectiveFactory 
    const directive = (a, b) => new MyDirective(a, b);
    directive.$inject = ['a', 'b'];
    return directive;
  

  ///more code
;

angular.module('module1').directive('mydirective', MyDirective.factory());

我尝试用angular.IDirectiveFactory 替换ng.IDirectiveFactory,效果很好,但文档说我应该使用ng 模块而不是angular 模块。

有什么想法吗?

【问题讨论】:

【参考方案1】:

我猜你是这样导入角度的:

import * as angular from 'angular';

他们可能会像这样在文档中导入它:

import * as ng from 'angular';

他们这样做是因为它更短:)。

【讨论】:

以上是关于模块“ng”没有导出成员“IDirective”的主要内容,如果未能解决你的问题,请参考以下文章

没有导出的成员/节点模块

打字稿模块没有导出的成员 - 反应

Vue / Typescript,得到模块'“*.vue”'没有导出成员

模块没有导出成员'IonicNativePlugin',Ionic2 for facebook

模块“redis”没有导出成员“RedisClient”

Vue 3 + TypeScript TS2614:模块 '"*.vue"' 没有导出成员