为什么我不能在TypeScript中导入sprintf-js

时间:2016-03-11 22:06:30

标签: javascript typescript

我有一个TypeScript文件,我将导入第三方库。

import * as _ from 'lodash'; // Works great!
import * as moment from 'moment'; // Works great!
import {vsprintf} from 'sprintf-js'; // Compiler error

正如我的评论所解释的那样,前两个导入工作得很好,但是sprintf-js导入却没有。我收到以下编译器错误:

  

错误TS2307:找不到模块' sprintf-js'。

毫无疑问,我的sprintf-js文件夹中有node_modules。我对节点模块知之甚少。我猜测sprintf-js图书馆做的事情与lodash或片刻不同,而且TypeScript并不喜欢它。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:1)

您需要为sprintf-js添加输入定义。根据您的设置 - 如果您已安装TSD并使用项目进行设置,则可以运行:

tsd  query sprintf-js --action save

否则,你可以在这里阅读:

http://definitelytyped.org/

或者只需下载打字定义并将其包含在项目根文件夹中:

https://raw.githubusercontent.com/DefinitelyTyped/DefinitelyTyped/master/sprintf-js/sprintf-js.d.ts