none
TypeScript ряд вопросов RRS feed

  • Вопрос

  • Добрый день!

     что я имею:

    1)я сам пишу на ts (VSCode)

    2)Есть файл  name.js и есть к нему name.d.ts (это не моя либа).

    3) есть точка входа point.ts

    tsconfig:

      "compilerOptions": {
        "module": "commonjs",
        "removeComments": true,
        "sourceMap": true,
        "target": "es5",
        "noImplicitUseStrict":true,
        "outDir": "dist",
        "lib": [
          "es5",
          "es6",
          "es7",
          "dom"
        ]
      
      }

    далее что я хочу..

    1) подключить скрипт name.js отдельно на страницу (<script src='name'></script>) - no problem...

    2) в point.ts заюзать name.d.ts чтобы иметь intellisense 

       2.1) добавлю ///<reference path='name.d.ts'

        2.2) далее сделаю import name from 'name'   - здесь он должен ссылаться на name.d.ts

    НЕ заработало....

    Лезу в tsconfig добавляю typeroots указываю путь до d.ts .... перезагрузил студию...и о чудо все заработало...

    теперь достаточно просто написать  import name from 'name'  без reference 

    Притом что если я уберу строку typeroots  из tsconfig....все продолжает так же хорошо работать даже если перезапустить студию(vscode)

    Выводы -  когда я один раз прописал в руте путь он должен был где-то сохраниться помимо tsconfiga .... это странно для меня...

    Прошу объясните как оно должно быть...

    что нужно сделать чтобы я мог получить intellisense при этом не запихивая всю библиотеку name.js в бандл?

    я эту либу отдельно подключить хочу...

    не нужны мне другие варианты

    Спасибо всем кто дочитал!

    18 ноября 2019 г. 12:06