Инструменты пользователя

Инструменты сайта


nodejs:express:registracija_routov

регистрация роутов

server.js

const express = require('express');//Подключаем модуль
const exphbs = require('express-handlebars');//Подключаем шаблонизатор
const app= express();//Результат работы модуля express, по сути создает сервер
const PORT = process.env.PORT || 3000; //Получить порт из переменного окружения или использовать дефолтный
 
/**
 * ПОдключаем роуты
 */
const aboutRoutes = require('./routes/about');//Страница about
 
const hbs= exphbs.create({//Настройки шаблонизатора
    defaultLayout: 'main',//Шаблон по умолчанию, основной, (template/layouts/main.hbs)
    extname: 'hbs' //Расширение шаблонов, пользовательское. По умолчанию express-handlebars
});
 
app.engine('hbs', hbs.engine);//Подключени шаблонизатора к express, регестрируем движок
app.set('view engine', 'hbs');//Запускаем шаблонизатор, используем
app.set('views', 'template');//Указываем папку с шаблонами
 
app.use(express.static('public'));//Статические папки для хранения стилей картинок
 
/**
 * Регестрируем роуты
 */
app.use(homeRoutes);
 
app.listen(PORT, () => {//Слушать 3000 порт
    console.log(`server is running on port ${PORT}`);
});

роут routes/home.js

const {Router} = require('express'); //или const express.Router = require('express');
const router = Router();
 
/**
 * Обработать get запрос
 * главная страница
 * первый параметр адрес страницы
 * второй параметр callback - обработчик запроса req - request , запрос от браузера
 * res - response, ответ сервера
 */
router.get('/', (req, res) => {
    res.status(200);//вернуть статус ответа
    res.render('index',{
        title: 'Главная станица',//Передаем в шаблон параметры
        isHome: true
    });//рендерим используя шаблонизатор
});
 
module.exports = router;//Экспортирум роутер
nodejs/express/registracija_routov.txt · Последние изменения: 2023/01/12 12:18 (внешнее изменение)