Skip to content

Commit 381a2a8

Browse files
committed
LEcture15
1 parent 3458880 commit 381a2a8

File tree

15 files changed

+1393
-0
lines changed

15 files changed

+1393
-0
lines changed

Lecture15/async/index.js

+35
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
const generatePromise = (n, v) => new Promise(resolve => {
2+
setTimeout(() => {
3+
resolve(v)
4+
}, n * 1000)
5+
})
6+
7+
// const download = generatePromise(5, "File Data")
8+
// const resize = generatePromise(2, "Resized File")
9+
// const upload = generatePromise(1, "uploaded File")
10+
11+
12+
// download.then(resize).then(upload)
13+
14+
// download.then(file => {
15+
// const splitedFile = file.split(',')
16+
17+
// return [resize, splitedFile]
18+
// }).then(([resizedFile, splitedFile]) => {
19+
20+
// })
21+
22+
23+
async function fn () {
24+
console.log("start")
25+
26+
await generatePromise(5, "File Data")
27+
28+
console.log("done Promise")
29+
30+
await generatePromise(8, "Another Promise")
31+
32+
console.log("Done Function")
33+
}
34+
35+
console.log(fn())

Lecture15/express-todo-hbs/index.js

+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
const express = require('express')
2+
const app = express()
3+
4+
app.set('view engine', 'hbs')
5+
6+
app.use(express.urlencoded({extended: true}))
7+
app.use(express.static(__dirname + '/public'))
8+
9+
let bands = [{
10+
id: 1,
11+
title: 'Nirvana',
12+
striked: false
13+
}, {
14+
id: 2,
15+
title: 'Black Sabbath',
16+
striked: true
17+
}]
18+
19+
app.get('/', (req, res) => {
20+
res.render('index', { bands })
21+
})
22+
23+
app.post('/', (req, res) => {
24+
bands.push({
25+
id: bands.length + 1,
26+
title: req.body.title,
27+
striked: false
28+
})
29+
res.redirect('/')
30+
})
31+
32+
app.post('/update/:id', (req, res) => {
33+
const band = bands.find(b => b.id == req.params.id)
34+
band.title = req.body.title
35+
band.striked = !(req.body.striked == "true")
36+
res.redirect('/')
37+
})
38+
39+
app.post('/delete', (req, res) => {
40+
bands = bands
41+
.filter(b => !b.striked)
42+
.map((el, index) => ({ ...el, id: index + 1}))
43+
res.redirect('/')
44+
})
45+
46+
app.listen(3000, function () {
47+
console.log("Listening on 30000")
48+
})

0 commit comments

Comments
 (0)