Файловая аннотация TypeScript для среды, такой как браузер или узел - PullRequest
0 голосов
/ 20 сентября 2018

Я пытаюсь написать универсальное приложение React.js с использованием TypeScript, и, если возможно, он хотел бы как-то аннотировать определенные файлы TypeScript таким образом, чтобы файл понимался как работающий в контексте браузера или в контексте Node.js.в явном виде.Так что любая попытка использовать API-интерфейсы браузера из среды Node.js потерпит неудачу, и наоборот.Как я могу это сделать?

Сейчас файлы находятся в одном и том же каталоге, и, возможно, в этом проблема, потому что у меня не может быть несколько файлов tsconfig, но если это единственное решение, я думаю, я должен сделать это таким образом.

1 Ответ

0 голосов
/ 22 сентября 2018

Каждый проект, описанный файлом tsconfig.json, имеет один набор видимых объявлений;в одном и том же проекте невозможно увидеть разные объявления в разных файлах.Вы можете поместить директиву <reference> в конкретный файл, но директива повлияет на весь проект.Таким образом, чтобы реализовать то, что вы хотите, используя обычную проверку типов, вам нужно использовать несколько tsconfig.json файлов.Могут быть и другие подходы, такие как использование правила запрета tslint для запрета всех API из одной среды в определенном файле, но я сомневаюсь, что они будут практичными.

...