Добрый день гуру Typescript, я программист C# и с синтаксисом Typescript для меня все просто. Но вот как я решил переписать один проект на TS где классов очень много (первое погружение). Мне пришлось разделить классы TS по разным файлам внутри проекта. При переписывании кода все авто подстановка кода работала на ура. А начинаю компилить пишет нет класса,
Подскажите, как подключать одни файлы TS к другим?
Чем и как отличаются и работают в свойствах проекта параметр ТипМодулей?
Где этот параметр Out который позволяет компилировать TS в один JS?
На сайте TipescriptLang есть Exsemple раздел, я его скачал. Но я не нашёл каким способом в них эти модули подключаются, ведь в студии есть выбор способа, а в примерах нет .project файлов с параметрами.
Где можно посмотреть реальные примеры на VS 2015? (калькулятор, т.п.) с классами в разных файлах?
Дайте ссылку или вышли те свой пример , ПОМОГИТЕЕ.
Первым делом Вы должны посмотреть настроки компилятора, вторым выставить версию в которую компилятор будет компилировать (es5, es6), по умолчанию вроде в es3 компилирует. так же Вы должны выбрать версию модулей. Все. Если Вы не знаете что такое модули в js, то Вам следуюе погуглить статьи на эту тему, но в двух словах, это обертки для Вашего кода, которые пом вместе собираются либо загружаются в браузер. так же нужно в самом typescript отдельные файлы подключать в зависимости от выбранных модулей. По умолчанию это вроде commonJS, в настройках компилятора посмотрите и посмотрите в гугле как нужно подключать.
copal: Спасибо, но вот. по умолчанию EcmaS 5, в том и дело что я вот интересуюсь, какие нужно выставлять настройки и как нужно делать ссылки в TypeScript чтобы потом VS с помощью упаковщиков правильно упаковывала и компилировала.
Я не пользуюсь vs, по этому как там я не знаю. Так же я не пользуюсь сборщиками, которые предоставляет ide я собираю сам при помощи gulp. Так же в настройках компилятора указано что по умолчанию target es3 Compiler-Options. Но какие параметры у vs по умолчания я тоже не знаю.
Чтобы знать как писать ссылки на модули Вы должны смотреть в документации тех модулей, которые подключаете. Для тех что идут по умолчанию с компилятором, не знаю как дела обстоят с vs, код будет примерно такой -
// ./test.ts
function Test(){}
module.exports = Test;
// ./some.ts
var Test = require('./test');
var test: Test = new Test();
И на самом деле ts не даст того, что хотят c#. У него все теже проблемы с синхронность, что и в js. единственное что он дает, это типы, которые помогают выявлять ошибки до компиляции. Но зато у него и минусов предостаточно. Сейчас сам на нем пишу и если честно, то очень много проблем с ним огреб, на решение их потратил недели две общего времени.
copal: по части что лучше, то я уверен TypeScript намного хуже, а C# лучше по удобству написания логики и остальному. Но Майрософт выпустила VS 2015, где обещала и добавила в саму студию поддержку Android, IOS, и добавила возможность программировать универсальные приложения, которые сразу компилятся во все платформы. А TypeScript позволяет в добавок использовать один и тот же код для универсальных приложений и при этом еще и в браузер переноситься без переделок.