FunScript: как получить доступ к TypeScript.Api<...>
Я начинаю с FunScript с рабочим примером. Используя Nuget для добавления необходимых библиотек, он работает хорошо.
При просмотре видео 2013 года на канале 9 они используют TypeScript.Api<...>
загружать типы из файлов определения машинописи.
Однако я нигде не могу найти этого типа провайдера. Где он находится? Я понял, что большое количество определений типов было скомпилировано в библиотеки и доступно в nuget, но я не могу по-настоящему использовать это, так как часть кода будет локальными файлами определений машинописи.
Поэтому вопросы
- Где
TypeScript.Api<...>
тип провайдера? - Если это не доступно или лучший способ использовать определение машинописи, какие другие варианты существуют.
2 ответа
Как сказал Томас, поставщик типов был удален в основном потому, что он не мог генерировать универсальные типы, но идея в том, чтобы вернуть его в какой-то момент.
На данный момент, хотя и не идеально, вы можете создать свои собственные привязки, следуя этим шагам.
- Скачать или клонировать репозиторий Funscript
git clone https://github.com/ZachBray/FunScript
- Постройте проект
cd FunScript
build.cmd
- Это должно быть улучшено, но сейчас вам нужно сжать файлы.d.ts, которые вы хотите конвертировать, а затем:
cd build\TypeScript
bin\FunScript.TypeScript.exe C:\Path\to\typedefinitions.zip
cd Output
Обратите внимание, что при первом создании определений это может занять несколько минут. Как только это будет сделано в выходной папке, вы найдете скомпилированные библиотеки.dll с привязками.
Кроме того, пока вы на это. Лучше использовать версию FunScript, в которую вы только что встроили build\main\bin
, поскольку он, вероятно, будет более обновленным, чем пакет nuget.
Удачи и веселья (сценарий)!
В FunScript было много изменений, поэтому TypeScript.Api<...>
поставщик типов больше не является рекомендуемым способом вызова библиотек JavaScript из FunScript.
Вместо этого привязки для библиотек JavaScript предварительно сгенерированы, и вы можете найти их в NuGet в виде пакетов, если будете искать по тегу FunScript (поиск NuGet не очень хорош, поэтому вам может понадобиться пройти через несколько страниц, чтобы найти тот, который вам нужен...).
Если вы хотите использовать локальное определение TypeScript, вам нужно запустить инструмент командной строки, чтобы сгенерировать привязки. Плагин F# Atom делает это в скрипте сборки, так что посмотрев, есть хорошее место для начала. Он имеет локальную копию различных привязок TypeScript в папке typings (вместе с двоичными файлами FunScript, необходимыми для их обработки).
Мне гораздо больше понравился подход с поставщиками типов, но, к сожалению, поставщики типов несколько ограничены в том, какие типы они могут предоставлять, поэтому он не был таким уж мощным...