我不得不问,因为这让我发疯了。我看到了在Google上安装打字的npm方式,但是Angular2's tutorial有一个添加了typings.json文件,然后它添加了typings文件夹并自动从DefinitelyTyped下载了d.ts文件。我用jquery尝试了这个,但它没有下载。我也尝试重建项目,我希望package.json包含添加其他类型的命令。
这是我在package.json文件中的脚本:
"scripts": {
"start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\" ",
"tsc": "tsc",
"tsc:w": "tsc -w",
"lite": "lite-server",
"typings": "typings",
"postinstall": "typings install"
}
这是我试过的typings.json文件。 es6-shim和jasmine已下载。
{ "ambientDependencies": {
"es6-shim": "github:DefinitelyTyped/DefinitelyTyped/es6-shim/es6-shim.d.ts#7de6c3dd94feaeb21f20054b9f30d5dabc5efabd",
"jasmine": "github:DefinitelyTyped/DefinitelyTyped/jasmine/jasmine.d.ts#7de6c3dd94feaeb21f20054b9f30d5dabc5efabd",
"jquery": "github:DefinitelyTyped/DefinitelyTyped/jquery/jquery.d.ts#7de6c3dd94feaeb21f20054b9f30d5dabc5efabd"
}}
这可能是一些简单的事情,比如没有标签之后的校验和。我在哪里可以找到正确的校验和,或者我需要在package.json中添加什么命令来检索编译时的输入,或者我做错了什么?
Here's another example在typings.json文件中添加一行,然后为您安装d.ts文件。向下滚动,直至看到手动输入
答案 0 :(得分:38)
仅使用npm (TypeScript 2及更高版本):
npm install --save @types/jquery
完成:有关详细信息,请参阅this。
使用typings (v.2之前的Typescript):
npm install typings --global
撰写typings install dt~jquery --save --global
这应该更新你的typings.json文件并下载定义文件。
在上面的打字示例中,' dt~'意味着它应该在DefinitelyTyped存储库中查找jquery,默认为' npm'。语法从版本0.x略微更改为1.0,标记--global
之前为--ambient
。
答案 1 :(得分:4)
我发现在创建typings.json文件后打开并重新保存package.json会触发打字输入。这是我目前的打字文件:
{
"ambientDependencies": {
"es6-shim": "github:DefinitelyTyped/DefinitelyTyped/es6-shim/es6-shim.d.ts#7de6c3dd94feaeb21f20054b9f30d5dabc5efabd",
"jasmine": "github:DefinitelyTyped/DefinitelyTyped/jasmine/jasmine.d.ts#7de6c3dd94feaeb21f20054b9f30d5dabc5efabd"
}
}