【问题标题】:How to define local .d.ts file definition in typings.json file如何在 typings.json 文件中定义本地 .d.ts 文件定义
【发布时间】:2016-05-26 15:08:41
【问题描述】:

我正在开发一个 angular2 应用程序。我在哪里使用 systemjs 和 typescript。

我有一个名为primeng 的本地节点模块,我想在我的项目中使用它。我正在编写正确的 systemjs 配置,它映射到primeng 的位置。

我在我的一个组件中导入primeng。

但是当我使用 gulp 编译我的应用程序时,我收到错误 TS2307:Cannot find module 'primeng'。

我知道我们必须在typings.json中提及任何包的定义文件。所以我试着像这样搜索primeng-typings search primeng。但我找不到那个。所以我查看了primeng模块并且有primeng.d.ts文件。

所以我不知道如何在typings.json 中包含这个定义。我希望写完之后,我的问题会得到解决。

有什么帮助吗?

【问题讨论】:

  • 无重复,仅定义一次。
  • 你已经问过同样的问题 - 为什么要打开一个新问题?
  • 这个问题是针对 systemjs 地图的。这是用于定义打字稿配置。虽然答案可能相同(对我来说这似乎是打字稿问题),但两者都是不同的问题。
  • 您是否尝试像这样引用类型文件:///<reference path="node_modules/primeng/primeng.d.ts"/> 在您执行导入的文件顶部?

标签: typescript angular systemjs primeng


【解决方案1】:

看起来@rinukkusu 的评论对您有用,将此引用添加到其 node_modules 文件夹中的类型定义:

///<reference path="node_modules/primeng/primeng.d.ts"/>

如果注册表中有类型定义,您可以这样做:

typings search primeng

并添加您要使用的那个,可能来自明确输入的“dt”源(这不存在,所以它不起作用,可能应该使用--global 标志):

typings install dt~primeng

由于您使用 npm 安装了 primeng,如果您是 tsconfig.json 文件,则不需要它:

moduleResolution: "node"

【讨论】:

  • 我已经在 tscconfig 中写了这个。但我仍然必须写@rinukkusu 告诉我要做的事情。
猜你喜欢
  • 2017-10-07
  • 2016-12-26
  • 2018-03-04
  • 2018-09-16
  • 2011-03-20
  • 1970-01-01
  • 2016-01-02
  • 2017-03-02
相关资源
最近更新 更多