Создайте свой MEAN-проект с помощью автоматического управления Express.js
Привет, некоторые из вас, возможно, уже знают, что мы ранее создали шаблон стека MERN, который поможет вам пропустить Express.js.
Что касается некоторых ваших запросов, мы хотели бы предложить вам новый шаблон с открытым исходным кодом. И на этот раз для стека MEAN 😉
И вы знаете, что вы все еще можете разрабатывать как фронт, так и бэкенд с помощью live-reload и развертывания с помощью простой командной строки, в то время как Express.js часть управляется на 100% автоматически, разве это не здорово? 🤯
Клонируйте его прямо здесь 👉, готовый к развертыванию шаблон
Теперь давайте узнаем, чем этот шаблон может вам помочь!
Стек MEAN, но вы кодируете только MAN 🤯
Помимо стека MERN, который обозначает MongoDB, Express, React и Node.js, у нас все еще есть стек MEAN для людей, которые используют Angular вместо React. Он также считается довольно популярным среди разработчиков Full Stack JavaScript.
Подобно шаблону MERN, этот шаблон MEAN также настроен специально для облачной платформы ScaleDynamics по лицензии MIT. Он предлагает все необходимое для начала разработки приложений / услуг на основе MEAN:
- Одна команда для разработки с live-reload
- Еще кое-что для развертывания, сделайте ваше приложение / сервис доступным по URL-адресу
- Нет управления слоями Express.js, платформа позаботится о них автоматически
- Нет кодирования HTTP / JSON, так как наш компилятор автоматически генерирует свои заглушки, необходимые для вызова функции Node.js с использованием объектов JS.
Не забывайте, что вам нужна учетная запись платформы ScaleDynamics, вы можете создать БЕСПЛАТНУЮ учетную запись сообщества прямо здесь).
Как пользоваться шаблоном
Прежде всего, клонируйте шаблон:
git clone https://github.com/ScaleDynamics/angular-mongodb-template.git
Тогда у вас будет готов как внешний, так и внутренний шаблон:
- Во внешнем интерфейсе у вас будет приложение веб-шаблона
angular-app
, созданное с помощьюangular-cli
. Чтобы обновить его, откройте папкуsrc
, в которой вы можете добавлять, изменять или удалять компоненты. - Бэкэнд содержит модуль узла и модуль MongoDB. Вы можете обновить интерфейс / серверную часть по мере необходимости для создания собственного приложения.
Чтобы начать разработку с использованием шаблона, войдите в папку frontend/angular-app
и выполните следующие команды:
Установить проект
npm install
Войдите в платформу ScaleDynamics
Не забудьте войти на платформу ScaleDynamics, чтобы начать разработку. Если у вас еще нет учетной записи, потратьте 2 минуты, чтобы создать бесплатную учетную запись сообщества здесь.
npx warp login
Разработка с live-reload
Запустите сеанс разработки с живой перезагрузкой с помощью этой команды.
npm run start
Вы всегда можете обновить внешний или внутренний код, он будет перестраиваться при каждой модификации.
Обратите внимание, что перед запуском этой команды вам нужно будет выбрать существующий проект или создать новый, как вы хотите. На платформе ScaleDynamics проект идентифицирует приложение или микросервис. Подробнее о проектах смотрите в документации.
Развертывание с помощью ScaleDynamics
Когда дело доходит до развертывания, вам необходимо скомпилировать и минимизировать свой проект для производства, используя:
npm run build
Затем команда развертывания
npm run deploy
Теперь, помимо выбора проекта, вам также нужно будет выбрать или создать среду, которая идентифицирует облачную среду выполнения для запуска вашего приложения. Вы можете создать столько, сколько захотите, например, «staging», «demo», «prod»... Каждая среда имеет свой собственный URL-адрес.
Дополнительные сведения о проектах или средах см. в документации.
Настроить драйвер MongoDB
В src/mongodb.js
. Существует модуль шаблона, в котором вы можете заменить его константу URI
своей собственной.
const URI = 'mongodb://[username:password@]host1[:port1][,...hostN[:portN]][/[defaultauthdb][?options]]';
Все готово!
Создание новых функций
Платформа ScaleDynamics позволяет вызывать новые функции из внешнего интерфейса. Добавьте их в index.js или в другой модуль и экспортируйте его. Платформа автоматически управляет слоями Express.js.
const myFunction = () => {
// your code here
}
module.exports = { myFunction };
Чтобы получить доступ к вашим новым функциям на стороне интерфейса, адаптируйте этот код:
import * as Backend from './.backend/hello.js';
const { myFunction } = new Backend();