Open IgorKulishov opened 6 years ago
Я рекомендую создать новую папку для проекта ts которую желательно закомитеть в репо, таким образом мы будем строить проекты и разбирать если что то не получается.
Я сделал все, описанное выше. Файл скомпилился в app.js без проблем. Все изменения я залил на гит, в твою созданную папку typescript.
Кстати, мне VSCode в файле tasks.json подсказывает, что "Свойство isShellCommand является устаревшим. Используйте свойство типа задачи и свойство оболочки в параметрах. Также см. заметки о выпуске для версии 1.14.", и что "Свойство showOutput является устаревшим. Используйте свойство reveal в свойстве presentation вместо этого свойства. Также см. заметки о выпуске для версии 1.14.". Я так понимаю, что это не критическая ошибка, а просто рекомендация идти в ногу со временем?
Да это рекомендация. Это значит что моя версия устарела. Рекомендую проапгрейдить.
Какая у тебя версия (для проверки в командной строке: tsc -v Вот тут вот версии typescript: https://www.npmjs.com/package/typescript
У меня версия 2,8,1. При установке мне сообщили о новой версии и предложили обновить
Мы изучили в прошлом уроке, что внутри нашего проекта нам необходимо создать папку .vscode внутри которой разместить конфигурационный файл tasks.json для авто-билда, который указывает маршрут к исходным файлам ts:
В данном уроке мы познакомимся еще с одним конфиг-ным файлом, который присутствует во-всех typescript проектах (независимо от редактора): tsconfig.json. Файл tsconfig.json должен находиться внутри папки с исходным typescript кодом (в верхней / головной папке, где находятся все исходные typescript файлы), этот файл указывает следующие и многие другие параметры: а) target - в какую версию JavaScript (ES5 или ES6) компилировать typescript код б) outDir - путь куда копировать откомпелированные JS файлы (в нашем примере, предположим мы создали папку "js") в) sourceMap - надо ли создавать так называемые "map" (app.js.map) файлы, которые позволяют в браузере показать и дебагить исходный код в синтаксисе typescript. Пример файла tsconfig.json :
Если мы хотим что бы все исходные typescript файлы компилировались и сохранять в один javascript файл (на выходе), к примеру "app.js" внутри папки "js" (что тоже возможно, т.е. все исходные файлы будут объединены в один файл на выходе, что удобно - в итоге один файл "app.js" будет вызван внутри файла index.html внутри тэга ), то надо использовать параметр "outFile":
Проделаем небольшую реструктуризацию проекта из предыдущего задания.
Создадим две папки: "ts" и "js", таким образом все исходные файлы будут храниться в папке "ts" , а все откомпелированные файлы будут сохраняться с папку "js".
Скопируем наш исходный app.ts файл внутрь папки "ts".
Создадим и поместим в папку "ts" наш новый конфигурационный файл tsconfig.json:
расположение папки .vscode с конфигурационным файлом tasks.json внутри (из предыдущего задания), оставим на том же месте без изменения - в корневой папке проекта. Однако в сам конфигурационный файл tasks.json внесем изменения: Для того что бы указать редактору, что исходные *.ts файлы находятся в папке "ts" нам надо будет в конфигурационном файле tasks.json указать в свойстве "args": ["-p", "ts"] , где -p это аргумент и "ts" папка в которой находятся исходные ts файлы (или файл):
Еще раз как будут выглядеть файлы перед началом компеляции:
После компеляции появиться файл app.js:
Все готово для того что бы откомпелировать исходный ts/app.ts в js/app.js файл.
В этом упражнении настроить пути конфигурационных файлов так что бы в итоге после компеляции app.js появился внутри папки js (кроме того если ты указал "sourceMap": true , то должен появиться файл app.js.map).
Напиши свои наблюдения и вопросы.