handlebars lekcja 1
This commit is contained in:
1 parent
e42104c4fb
commit
527e0a34bb
1265 files changed
+213278
No files matched your search
@@ -0,0 +1,65 @@
|
||||
const context = {
|
||||
subject: "ćwiczenie 4 - dane z tablicy, select",
|
||||
fields: [
|
||||
{ name: "title" },
|
||||
{ name: "author" },
|
||||
{ name: "lang" }
|
||||
],
|
||||
books: [
|
||||
{ title: "Lalka", author: "B Prus", lang: "PL" },
|
||||
{ title: "Hamlet", author: "W Szekspir", lang: "ENG" },
|
||||
{ title: "Pan Wołodyjowski", author: "H Sienkiewicz", lang: "PL" },
|
||||
{ title: "Zamek", author: "F Kafka", lang: "CZ" }
|
||||
]
|
||||
}
|
||||
|
||||
const express = require("express")
|
||||
const app = express()
|
||||
const PORT = 3000
|
||||
const path = require('path')
|
||||
|
||||
const { create } = require('express-handlebars');
|
||||
|
||||
const hbs = create({
|
||||
defaultLayout: 'main.hbs', // Domyślny layout: views/layouts/main.hbs
|
||||
extname: '.hbs' // rozszerzenie plików szablonów
|
||||
});
|
||||
|
||||
app.engine('.hbs', hbs.engine); // określenie silnika szablonów
|
||||
app.set('view engine', '.hbs');
|
||||
app.set('views', path.join(__dirname, 'views')); // ustalamy katalog views
|
||||
|
||||
app.get("/", function (req, res) {
|
||||
res.render('index04a.hbs', context)
|
||||
})
|
||||
|
||||
app.get("/handle04", function (req, res) {
|
||||
let data = {
|
||||
subject: context.subject,
|
||||
books: []
|
||||
};
|
||||
|
||||
if (!req.query.field) {
|
||||
data.books.push({ value: "Musisz wybrać co najmniej jedno kryterium!" })
|
||||
} else {
|
||||
switch (req.query.field) {
|
||||
case 'title':
|
||||
context.books.forEach(book => { data.books.push({ value: book.title }) })
|
||||
break
|
||||
case 'author':
|
||||
context.books.forEach(book => { data.books.push({ value: book.author }) })
|
||||
break
|
||||
case 'lang':
|
||||
context.books.forEach(book => { data.books.push({ value: book.lang }) })
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
res.render('index041.hbs', data);
|
||||
})
|
||||
|
||||
app.use(express.static("static"))
|
||||
|
||||
app.listen(PORT, function () {
|
||||
console.log("start serwera na porcie " + PORT)
|
||||
})
|
||||
Reference in new issue
Block a user