我在VisualStudio中使用knockout开发Web应用程序.我刚刚通过bower安装了淘汰赛,包括项目中的d.ts文件,包含脚本到html页面,现在我可以访问ko了.
现在我尝试使用moment.js.与淘汰赛一样:安装,包括d.ts,包括脚本到页面,我得到一个错误找不到名字’时刻’.添加对d.ts的引用没有帮助,导入*作为从’moment’获得错误的时刻找不到模块时刻.
我知道这是一个愚蠢的问题,但我无法解决它.我究竟做错了什么?
解决方法
我建议使用一些工具来管理你的定义.一些流行的选项(你不需要两个,只需选择一个):
> tsd – npm i -g tsd
>打字 – npm i -g typings
这些工作方式与包管理器类似.你可以安装你的定义,如npm / bower安装你的依赖项.
一旦安装了其中一个,请转到您的项目并安装其定义
npm install moment --save
其中一个:
tsd install moment --save typings install moment --save --ambient
这两个都将创建一个包含您的定义的文件夹(两者都称之为打字),并且两者都有一个“伞”定义文件,您应该在应用程序的入口点引用(首先是tsd,第二个是分型):
/// <reference path="typings/tsd.d.ts" /> /// <reference path="typings/index.d.ts" />
完成此操作后,您可以使用时刻(或任何其他模块):
import * as moment from 'moment' moment.isDate("I'm not a date")
我建议看看这些:
https://github.com/DefinitelyTyped/tsd
https://github.com/typings/typings