首页 文章

Typescript @Types用法和期望

提问于
浏览
0

我试图让@types在Visual Studio Enterprise 2015第3版的ASP.NET 4 MVC 5 Web应用程序中使用npm工作 . 要清楚这是一个中等规模的传统ASP.NET MVC LOB项目,旨在支持5 -10K用户同时进行 . 它不是ASP.NET核心应用程序,单页面应用程序,并且不使用angular,gulp,webpack或node.js.

这是我的package.json中的依赖项:

"devDependencies": {
"@types/chai": ">=3.4.0",
"@types/chai-as-promised": ">=0.0.29",
"@types/mocha": ">=2.2.0",
"@types/mocha-phantomjs": ">=3.4.0",
"@types/sinon": ">=1.0.0",
"@types/sinon-chai": ">=2.7.0"
},
"dependencies": {
"@types/jquery": ">=2.0.4",
"jquery": ">=2.0.4",
"phantomjs": ">=2.1.7"
}

node_modules文件夹包含其@types子文件夹中的所有@types d.ts文件 . 它包括@types列表中具体提到的所有js库 . 它还包括所有列出的@types所依赖的所有js库,以及那些依赖于它们的js库 .

但是,我也有205个错误,例如,

错误TS2688找不到'yauzl'的类型定义文件 . TypeScript虚拟项目1活动 .

所以...我猜这些是Visual Studio Build内置的Typescript构建过程抛出的错误 . 而这似乎说的是VS Typescript虚拟过程的构建过程知道这些依赖的,而不是@typed javascript库,但它也相信这些js库应该提供适当的声明 .

这让我怀疑ASP.NET 4 MVC 5与其Typescript虚拟解决方案工具之间的兼容性以及正在进行的Typescript功能集增长 .

但也许它很简单,我只需要一些帮助!

1 回答

  • 1

    您的 tsconfig.json 文件(位于解决方案的根目录)应该有 typeRoots 条目来自动引入这些文件:

    {
        "compileOnSave": true,
        "compilerOptions": {
            // ...  
            "typeRoots": [
                "./node_modules/@types/"
            ]
        },
        "exclude": [
          //...
        ]
    }
    

相关问题