将输入从0.x升级到1.x. / typings在哪里?

时间:2016-06-15 15:58:20

标签: angular npm typescript-typings

在TypeScript中编写Angular 2应用程序,我试图关注5 Min Quickstart guide。最近,npm typings包从0.x变为1.x.根据{{​​3}},我们应该在升级时删除/typings以便我这样做。删除该目录后,我运行了npm uninstall typings,然后npm install typings。我现在安装了typings 1.1.0

这是我的 typings.json

{
  "globalDependencies": {
    "core-js": "registry:dt/core-js#0.0.0+20160317120654",
    "jasmine": "registry:dt/jasmine#2.2.0+20160505161446",
    "node": "registry:dt/node#4.0.0+20160509154515"
  }
}

问题是,我预计安装会创建一个新的/typings,并用official instructions填充它。但是,我仍然没有/typings。尝试运行typings install会引发错误'typings' is not a recognized command, program or batch file(我在Windows 7上)。是什么给了什么?

为什么会出现问题:除非我引用(现已删除)"Cannot find name 'Promise'" (or 'Set' or 'Map')

,否则打字稿编译器会抛出大量///<reference path="../typings/main/ambient/es6-shim/es6-shim.d.ts"/>错误

2 个答案:

答案 0 :(得分:1)

typings install无法识别(可能是因为我没有全局安装)。要创建和填充/typings,我需要执行npm run typings install。这创建了/typings/globals并在我的typings.json中填充了包。

为了处理&#34;找不到名字&#39;承诺&#39;&#34;错误,然后我将引导程序文件中的引用路径更改为

旧:///<reference path="../typings/main/ambient/es6-shim/es6-shim.d.ts"/>

到新的:///<reference path="../typings/globals/core-js/index.d.ts"/>

鉴于Angular 2最近在es6-shim中将core-js替换为typings.json

答案 1 :(得分:0)

我曾经有过这个问题。为了解决它,我补充道     ///<reference path="../../node_modules/angular2-in-memory-web-api/typings/browser.d.ts" />这个tsd.d.ts文件的引用路径。路径可能会有所不同,具体取决于您的环境设置方式。但是,如果我记得正确的browser.d.ts有这些类型的参考文献。

这是预发布候选人的相关问题。 Angular 2 can't find Promise,Map,Set and Iterator