Как добавить файлы определения TypeScript в систему контроля версий? - PullRequest
0 голосов
/ 28 ноября 2018

У меня есть простое основное веб-приложение asp.net, где я установил библиотеки javascript с использованием libman.

Я хочу использовать машинопись, поэтому я установил файлы определений машинописи для библиотек, использующих npm, например:

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

Я хотел бы добавить файлы .d.ts в систему управления версиями, чтобы другие разработчики не полагались на NPM - это цель libman, не так ли?

Папка

/ node_modules по умолчанию игнорируется в .gitignore.

Как включить файлы определения машинописного текста?

Ответы [ 2 ]

0 голосов
/ 04 января 2019

Для тех, кто предпочитает просто напечатать его в себе: JSON, сгенерированный libman install @types/jquery -p unpkg

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

(Примечание: у меня был существующий файл libman.json, и он был добавлен в "libraries" массив)

0 голосов
/ 29 ноября 2018

Поскольку вы установили библиотеки javascript с использованием LibMan, вы можете просто повторно использовать LibMan для установки определений:

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

Путь по умолчанию будет libs/@types

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

Я создаю tsconfig.json и настраиваю сопоставление путей для загрузки модулей, как показано ниже:

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

Теперь мы можем извлечь пользу из машинописного текста:

enter image description here

[Обновить]

Для проекта ASPNET-CORE путь по умолчанию будет: wwwroot/lib/@types, если у нас есть tsconfig.json в рамках проектадиректории (рядом с файлом проекта *.csproj), нам нужно изменить путь на:

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

enter image description here

...