Как использовать определения Typescript, чтобы получить Intellisense для моих собственных служб Javascript в VS Code?
Я занимаюсь разработкой внутреннего сервера с использованием SailsJS. Он в основном внедряет все вспомогательные службы моделей, а также мои собственные службы в глобальное пространство имен. Мне было бы очень полезно, если бы я мог получить Intellisense для этих услуг.
Я сначала настроилтипизации и установил глобальные определения типов для lodash и node. Это работает как шарм после созданияjsconfig.json а такжеtsconfig.json файлы.
Затем я хотел создать файл базовых определений для своих собственных сервисов. Я создал каталог втипизации / Глобал сindex.d.ts файл в нем:
declare namespace foo {
export function bar();
}
declare var baz: { some: number };
Это просто для того, чтобы не тратить время на написание определений, если они не будут работать.
Далее я включил этоindex.d.ts файл втипизации / index.d.ts добавив ссылочный тег:
/// <reference path="globals/psiewakacje/index.d.ts" />
К моему удивлению, это не работает в файлах Javascript моего проекта. После вводаfoo.
или жеbaz.
Я не получаю никакого разумного Intellisense.
Единственная поддержка Intellisense, которую я смог получить, была, когда я импортировал эти сервисы в каждый файл через:
import * as InternalParser from '../services/InternalParser';
или же
var InternalParser = require('../services/InternalParser');
но это не использует файлы определения Typescript и просто дает мне экспортированные свойства. В целом нежелательный результат.
Интересно, как заставить его работать правильно. Я посмотрел на файлы определения типов узлов и lodash, и они делают то же самое: объявляют переменную / пространство имен с определенным типом. Однако их определения работают в Javascript, а мои - нет. Как сделать это правильно?