Если вы подобны мне, которые думают, что комбинация услуг Firebase с Angular5 – это матч, сделанный на небесах, то вы, должно быть, уже изучали функции огненного и FireBase.
На данный момент вы начинаете привыкать к идее сильной печати, ставшего возможным по TypeScript, что позволяет создавать модели данных и интерфейсы.
Это делает ваш код более надежным и менее склонным к ошибкам, которые обычно скользят за незамечательство и заставляют ваше приложение не провалиться молча во время выполнения в обычном коде JavaScript. Таким образом, некоторые ситуации, которые вы используете для написания тестов для чистого JavaScript, становятся действительно тривиальными или иногда без необходимости.
Во время разработки вы обычно находите переключение между вашим угловым исходным кодом и исходным кодом вашей облачной функции. Затем наступает контраст Stark, когда вы понимаете, что Angular5 устанавливается с помощью TeampScript, когда исходный код облачных функций находится в хорошем ol ‘JavaScript.
Сразу разница становится действительно понятной. В чистом JavaScript переменные сдвига формирования являются нормой. В этом мире переменная первоначально назначена строка, можно переназначить номер, затем объект.
В этом эгалитарном мире, где переменная типа товара или школы или пользователя или пользователю не существует – вы можете сказать, какие классы для?
Здесь управляющие сложные многоступенчатые асинхронные операции становится действительно Verbose вместо использования Async/await
Отказ Импорт
превращается в требуется
и Экспорт
превращается в Module.exports
(Хотя это наименьшее ваши заботы).
В духе изоморфизма вы решили преобразовать ваш исходный код Angular5 для использования чистого JavaScript (Oh! Ужас), шучу
Хорошо, это наоборот. Вы решили преобразовать исходные функции облачных функций для поддержки TypeScript.
Первая фаза состоит в том, чтобы настроить необходимые зависимости.
Шаг 1.
CD в каталог ваших функций. Функции CD
Отказ
Шаг 2.
npm install --save-dev typescript
Шаг 3. Обновите файл Package.json со следующими полями:
{ ..., "scripts": { ..., "build": "tsc", "watch": "tsc --watch", "deploy": "tsc && firebase deploy --only functions" }, "main": "build/index.js", }
Шаг 4.
Тем не менее, в ваших функциях корневая папка создайте новый файл под названием TSConfig.json и добавить его следующий контент.
"compilerOptions": { "lib": ["es6", "es2015.promise"], "module": "commonjs", "noImplicitAny": false, "outDir": "build", "sourceMap": true, "target": "es6" }, "include": [ "src/**/*.ts", "spec/**/*.ts" ] }
Для получения дополнительной информации о том, что каждый из полей делает, здесь действительно хорошая ссылка на поиск.
Шаг 5.
Создайте папку SRC в корне папки функций и переместите весь исходный код для функций облачных облаков.
На этом следующем этапе мы рефикторуем наш код для поддержки Typescript.
Мы обновляем
.js
Расширение во всех файлах в каталоге SRC на.ts
ОтказВсе
const ('
превратится в') Импорт * как переменная от '
Отказ' Заменить все
var
сПусть или const
(Пусть
для того, когда переменная переназначается).Заменить все
Module.exports
сЭкспорт Пусть
Отказ
Как только вышеуказанные шаги сделаны, Поздравляю! Теперь вы готовы начать использовать Typescript и список потрясающих функций, которые он обеспечивает, который вы уже используете в своем исходном коде Angular5 на стороне сервера.
Разверните ваше приложение
Как только вы закончите редактирование исходного кода и готовы развернуть, все, что вам нужно сделать, это введите следующую команду в вашем терминале:
NPM запустить развертывание
Отказ
Это будет строить и развернуть ваши функции в облако.
Ваше здоровье!