1

我有简单的 asp.net 核心 Web 应用程序,我在其中使用 libman 安装了 javascript 库。

我想使用打字稿,所以我已经使用 npm 为库安装了打字稿定义文件,例如:

npm install @types/jquery --save-dev
npm install @types/bootstrap --save-dev

我想将 .d.ts 文件添加到源代码控制中,这样其他开发人员就不必依赖 NPM - 这是 libman 的目的,不是吗?

/node_modules 文件夹默认在 .gitignore 中被忽略。

如何包含打字稿定义文件?

4

2 回答 2

3

由于您已经使用 安装了 javascript 库LibMan,因此您也可以简单地重复使用LibMan来安装定义:

libman install @types/jquery -p unpkg
libman install @types/bootstrap -p unpkg

默认路径为libs/@types:</p>

lib/
    @types/
        bootstrap/
            index.d.ts
            ...
        jquery/
            index.d.ts
            ...

我创建tsconfig.json并配置路径映射以加载模块,如下所示:

{
    "compilerOptions": {
        "baseUrl": ".",
        "paths": {
            "jquery": ["lib/@types/jquery"] ,
            "bootstrap":["lib/@types/bootstrap"]
        }
      }
}

现在我们可以从打字稿中受益:

在此处输入图像描述

[更新]

对于 ASPNET-CORE 项目,默认路径为:wwwroot/lib/@types,如果我们tsconfig.json在项目目录下(项目文件旁边*.csproj),我们需要将路径更改为:

{
    "compilerOptions": {
        "baseUrl": ".",
        "paths": {
            "jquery": ["wwwroot/lib/@types/jquery"] ,
            "bootstrap":["wwwroot/lib/@types/bootstrap"]
        }
      }
}

在此处输入图像描述

于 2018-11-29T05:42:46.373 回答
1

对于那些宁愿自己输入的人:JSON 生成libman install @types/jquery -p unpkg

{
    "provider": "unpkg",
    "library": "@types/jquery@3.3.29",
    "destination": "wwwroot/js/lib/@types/jquery"
}

(注意:我有一个现有libman.json文件,这已添加到"libraries"数组中)

于 2019-01-03T23:32:33.803 回答