在Typescript中,如何从Typeings导入时使用Javascript模块

jef*_*eld 7 javascript typescript angular

使用mgechev的angular2-seed,我正在尝试使用Angular2和Typescript来处理一个新项目,但是遇到了这个问题.

我想在组件中使用Numeral,所以我:

  1. 使用安装的数字 npm install numeral
  2. 安装了Numeral的输入 typings install dt~numeraljs --global --save
  3. 在我的组件中添加 import { numeral } from '/typings/globals/numeraljs';
  4. 添加了代码行: let num:Number = new Number(numeral().unformat(text));

到现在为止还挺好.一切似乎都很好.直到我进入浏览器,我进入控制台:

Error: XHR error (404 Not Found) loading http://localhost:5555/typings/globals/numeraljs.js(…)
Run Code Online (Sandbox Code Playgroud)

我在这做错了什么?我是否错过了告诉Typescript实际代码的位置?

rin*_*usu 10

通常,您要做的是,如果包不是本机Typescript模块:

import * as numeral from 'numeral';
Run Code Online (Sandbox Code Playgroud)

typings文件夹仅用于告诉Typescript类型定义是什么,因此它将用于代码突出显示和linting.要导入的实际模块位于node_modules文件夹中,可以使用其名称导入.

如果仍然抱怨没有找到numeral你可以添加的模块

/// <reference path="typings/globals/numeraljs/numeraljs.d.ts"/>
Run Code Online (Sandbox Code Playgroud)

或存储Typescript定义文件的任何位置.