好的,这是我在SO上的第一个问题,多么令人兴奋啊!
我正在尝试让MomentJS定义与Typescript 2.0一起使用。
我没有任何问题可以获得Angular定义的工作,只需执行 npm install @types/angular --save-dev
即可。
但是,MomentJS(2.15.1)已经随着您安装它时获取的软件包的一部分而附带了 moment.d.ts
。
如果您尝试对angular进行类似的方法,即 npm install @types/moment --save-dev
,则会得到以下结果:
npm WARN deprecated @types/moment@2.13.0:这是Moment的存根类型定义( https://github.com/moment/moment )。 Moment提供自己的类型定义,因此您不需要安装@types/moment!
当然,如果您转到 node_modules \ @ types \ moment
,那里没有什么有用的东西。
是的,我已经在我的根文件夹上添加了 tsconfig.json
文件,因此Typescript 2.0将自动从node_modules中获取@types(这就是为什么Angular运行良好的原因),但是对于MomentJS,我会收到下面的错误(因为.d.ts不在TS2期望它在的位置):
TS2304无法找到名称“moment”。
我还尝试在没有任何运气的情况下使用“typeRoots”
配置在 tsconfig.json
上玩耍。
这是我的 package.json
的相关部分:
{
"devDependencies": {
"@types/angular": "^1.5.16"
},
"dependencies": {
"moment": "^2.15.1"
}
}
我正在使用VS2015,如果这有关系的话。
那么...有没有关于如何让Typescript 2.0读取Moment类型定义的想法,因为它位于一个"意外"的文件夹中?