Как действительно "начать работу" с FunScript
у меня возникли реальные проблемы, пытаясь начать работу с FunScript, мне очень нравится идея F# -> Javascript, но постоянно расстраивается количеством информации/документации о том, как работать с такими красивыми технологиями.
вот в чем проблема:
шаблон проекта FunScript (без хостинга) не может быть установлен, потому что: "вам нужно установить Nuget", говорит VS, когда я пытаюсь загрузить его. // Dah, I do have Nuget and just updated it to latest release. I'm using VS2013 Ultimate.
Я сделал следующее:
I создал новый проект Библиотеки FSharp, а затем запустил команду Package Maneger для получения необходимых библиотек FunScript:
PM> Install-Package FunScript
это сработало хорошо, но потом . . . Когда я смотрю на пример FunScript, я вижу open FunScript.TypeScript
в программе, которая в настоящее время не существует, когда я набираю, что, как говорится, TypeScript не определяет, и глядя на примеры FunScript.TypeScript дает возможность использовать jQuery и взаимодействовать с DOM. так что без него я ничего не могу сделать здесь
I заметил сторонние библиотеки на Nuget для FunScript, то:
FuncScript.TypeScript.Bindings.(lib|jquery)
но я не могу ссылаться на них в операторе "open [namespace]".
и, наконец, должны быть компоненты "do Runtime"..."что-то в конце программы. это также "не определено"
у вас есть полный пример FunScript, с которого я могу начать? (Я уже много искал в интернете, программы, которые я видел, не работали со мной)
3 ответов
извините, проект все еще немного тонкий по документации. Мы постараемся улучшить это в ближайшее время.
теперь я обновил Шаблон Проекта Funscript Visual Studio чтобы удалить зависимость диспетчера пакетов NuGet. От v1.1.0.15
Он должен работать в Visual Studio 2013. Примечание: вам может потребоваться построить дважды, чтобы восстановить пакеты NuGet правильно.
вы получаете только базовый компилятор f# для JS (и некоторый FSharp.Сопоставления поставщиков типов данных) в основной пакет NuGet. Если вы хотите получить доступ к JavaScript через привязки TypeScript, вы должны добавить ссылки на те пакеты" Привязок", которые вы упомянули.
имена этих пакетов фактически не отражают никакого пространства имен в сборках. В настоящее время они импортируют типы в глобальное пространство имен (т. е. они должны быть доступны в intellisense без открытия пространств имен). Если TypeScript не содержит модулей, в этом случае функции и типы сопоставляются с соответствующие пространства имен .NET.
Е. Г., Globals.alert(message)
следует ввести-проверить после добавления FunScript.TypeScript.Binding.lib
пакета NuGet.
обратите внимание, мы можем перенести эти определения в FunScript.TypeScript
пространство имен в будущем, чтобы избежать загрязнения глобального пространства имен.
на do Runtime.Run(components)
вызов в примерах на самом деле является просто вспомогательным методом. Вероятно, мы должны удалить это из примеров, так как это смущает многих людей. Единственный метод вызова вам действительно нужно это Compiler.Compile(<@ main() @>, noReturn = true)
, которым компилирует предложение и возвращает строку JavaScript. Затем пользователю решать, что они делают с этим JavaScript (например, помещают его на размещенную страницу).
Я буду добавлять больше документации по использованию FunScript, когда я выпущу другой проект под названием HashBang, который использует FunScript для создания обходимых-динамических-веб-сайтов. Это будет включать пошаговые руководства по созданию и развертыванию с помощью HashBang/FunScript.
У меня был плавный вход ...
используется MS Visual Studio 2013 (professional) с шаблоном проекта vanilla "FunScript - not Hosted" (Зак Бари), который можно найти через онлайн-поиск проекта.
затем добавьте соответствующие пакеты привязки FunScript (через NuGet). Я добавил Для некоторых своих решений: FunScript.машинописный текст.Обязательный.jquerymobile и FunScript.машинописный текст.Обязательный.помощью PhoneGap
вы можете увидеть несколько моих примеров на GiHub (https://github.com/ZachBray/FunScript/tree/master/src/samples/EasyGettingStarted). Все, что вам нужно сделать, это заменить программу.fs Из проекта по умолчанию (FunScript - не размещен). И добавьте остальные файлы. Я использую в качестве основы некоторые коды Зака Брэя. См. файл README по ссылке выше.
должен быть опыт 5-10 минут для вас, если у вас установлен MS VS 2013. Я в процессе представления дополнительных примеров. Я рекомендую Funscript.
согласно совету Зака выше, я создал рабочий (по крайней мере, время написания) пример проекта для OSX и Xamarin Studio:
https://github.com/mfrawley/Funny
Я нашел процесс установки абсолютно неинтуитивным, но теперь, когда он работает и видит множество доступных пакетов NuGet, я очень рад видеть, как эта вещь развивается.