TypeScript неумолимо приближается к релизу, недавно вышла версия 0.9.5.
Вместе с этим мы продолжаем развивать наши определения типов JavaScript Object Model в SharePoint, чтобы вам было комфортно писать клиентский код для решений и приложений SharePoint.
На сайте проекта http://sptypescript.codeplex.com/ опубликован новый релиз, в который вошли:
- Определения для Chrome Control для apps.
- Определения для SPClientPeoplePicker для создания кастомных форм с контролом выбора людей.
- Полные определения типов для пространств имен SP.Publishing и SP.DocumentManagement из файлов sp.publishing.js и sp.documentManagement.js соответственно. Они вам очень пригодятся для ECM\WCM сценариев.
- Reputation object model – для социальных приложений.
- Множество примеров и мелкие улучшения существующих определений.
Ссылка на релиз - http://sptypescript.codeplex.com/releases/view/115896
Также последнюю версию определений можно получить с помощью NuGet -http://www.nuget.org/packages/sharepoint.TypeScript.DefinitelyTyped/
Как использовать TypeScript для приложений SharePoint
Для начала установите последнюю версию TypeScript (0.9.5).
Создаете новый App для SharePoint в VisualStudio 2013
Теперь самое неприятное – надо поправить .csproj файл, чтобы включить компиляцию TypeScript. Для этого надо:
- В контекстном меню проекта нажать Unload Project
- На выгруженном проекте нажать Edit
- В самом конце, перед закрывающим тегом Project надо добавить одну строчку:
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" />
- На выгруженном проекте нажать Reload Project
- Верить что к релизу не придется исполнять эти танцы с бубном...
После этого надо выставить настройки проекта в свойствах проекта
Далее переименовываете App.js в _App.js. Удалять не надо, он еще пригодится.
Добавляете App.ts файл
Добавляете дефинишены для SharePoint и JQuery с помощью NuGet
Копируете содержимое _App.js в App.ts и удаляете _App.js и сразу получаете типизацию в .ts файле. Можно также сделать небольшой рефакторинг в стандартном шаблоне, чтобы максимально использовать типизацию:
Последний штрих – скомпилировать проект и добавить сгенерированные App.js и App.js.map в решение.
Теперь можно запускать приложение и будет работать отладка в .ts файле
Планы на будущее
Сейчас дефинишенами покрыто почти все API для которого можно хоть как-то найти документацию. К релизу TypeScript 1.0 мы выпустим версию SPTypeScript 1.5 (или 2.0). Если есть какой-то API SharePoint, для которого вы хотите видеть дефинишены в нашем проекте, пишите на CodePlex в раздел Discussions - http://sptypescript.codeplex.com/discussions.
Будем рады любому фидбеку.