Can';t查找@uirouter/angularjs的内联索引.d.ts

Can';t查找@uirouter/angularjs的内联索引.d.ts,angularjs,typescript,angular-ui-router,visual-studio-code,Angularjs,Typescript,Angular Ui Router,Visual Studio Code,我正在使用Angularjs 1.6.4和ui路由器的最新Typescript版本,使用VS代码 目前我正在使用@types文件夹进行类型定义 Typescript定义文件有一个问题,我已经使用了相当长的时间——即矩.js,现在我尝试将“angular ui router”升级到新的嵌套@uirouter/angularjs 问题似乎在于,typescript不知道查看外部库的package.json文件中的“Typings”字段以获取其定义文件,即使在moment.js和@uirouter/a

我正在使用Angularjs 1.6.4和ui路由器的最新Typescript版本,使用VS代码

目前我正在使用@types文件夹进行类型定义

Typescript定义文件有一个问题,我已经使用了相当长的时间——即矩.js,现在我尝试将“angular ui router”升级到新的嵌套@uirouter/angularjs

问题似乎在于,typescript不知道查看外部库的package.json文件中的“Typings”字段以获取其定义文件,即使在moment.js和@uirouter/angularjs中显然存在此类文件的情况下也是如此

这是我的tsconfig:

{
    "compilerOptions": {
        "baseUrl": "",
        "module": "es6",
        "noImplicitAny": true,
        "noImplicitReturns": true,
        "removeComments": true,
        "strictNullChecks": true,
        "sourceMap": true,
        "target": "es5",
        "outDir": "junk_js_files",
        "paths": {
            "services": ["app/scripts/services/*"],
            "inputDirectives": ["app/scripts/inputDirectivesModule/*"],
            "common": ["app/scripts/common/*"]
        }
    },
    "include": [
        "app/**/*.ts",
        "DefinitelyTyped/*"
    ],
    "exclude": [
        "node_modules",
        "**/*.spec.ts",
        "dist"
    ]
}
在moment.js和@uirouter/angularjs中,您可以清楚地看到package.json文件中有一个字段,说明typings(index.d.ts)文件的位置,为什么typescript会忽略它

我无法升级到最新的uirouter,因为这个讨厌的bug阻止我使用最新的定义文件

如何“教”typescript查找typings字段并使用第三方库提供的index.d.ts

谢谢,
Avi.

无论谁发现了这个问题,也有这个问题,请点击这里:

更新您的
tsconfig.json

{
    "compilerOptions": {
        ...
        "moduleResolution": "node"
    },
    ...
}

我最近遇到了这个问题,但是,提供的确保“moduleResolution”设置为“node”的解决方案不适用于我的场景。