Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/yuriipohorilets/goit-js-hw-08
π JS-HW-08 | Project infrastructure. Storage
https://github.com/yuriipohorilets/goit-js-hw-08
goit javascript npm storage
Last synced: about 2 months ago
JSON representation
π JS-HW-08 | Project infrastructure. Storage
- Host: GitHub
- URL: https://github.com/yuriipohorilets/goit-js-hw-08
- Owner: YuriiPohorilets
- Created: 2022-08-19T17:13:49.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-10-06T11:09:17.000Z (about 2 years ago)
- Last Synced: 2023-03-07T13:40:48.396Z (almost 2 years ago)
- Topics: goit, javascript, npm, storage
- Language: JavaScript
- Homepage: https://yuriipohorilets.github.io/goit-js-hw-08/
- Size: 1.4 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ΠΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ². ΠΠ΅Π±-Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ | goit-js-hw-08
## ΠΡΠΈΡΠ΅ΡΠΈΠΈ ΠΏΡΠΈΠ΅ΠΌΠ°
- Π‘ΠΎΠ·Π΄Π°Π½ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ `goit-js-hw-08`.
- ΠΡΠΈ ΡΠ΄Π°ΡΠ΅ Π΄ΠΎΠΌΠ°ΡΠ½Π΅ΠΉ ΡΠ°Π±ΠΎΡΡ Π΅ΡΡΡ Π΄Π²Π΅ ΡΡΡΠ»ΠΊΠΈ: Π½Π° ΠΈΡΡ ΠΎΠ΄Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈ ΡΠ°Π±ΠΎΡΡΡ
ΡΡΡΠ°Π½ΠΈΡΡ Π½Π° `GitHub Pages`.
- ΠΡΠΈ ΠΏΠΎΡΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΆΠΈΠ²ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ Π·Π°Π΄Π°Π½ΠΈΡ, Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Π½Π΅ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΉ.
- ΠΡΠΎΠ΅ΠΊΡ ΡΠΎΠ±ΡΠ°Π½ Ρ ΠΏΠΎΠΌΠΎΡΡΡ
[parcel-project-template](https://github.com/goitacademy/parcel-project-template).
- ΠΠΎΠ΄ ΠΎΡΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ `Prettier`.## Π‘ΡΠ°ΡΡΠΎΠ²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ
[Π‘ΠΊΠ°ΡΠ°ΠΉ ΡΡΠ°ΡΡΠΎΠ²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ](https://downgit.github.io/#/home?url=https:%2F%2Fgithub.com%2Fgoitacademy%2Fjavascript-homework%2Ftree%2Fmain%2Fv2%2F08%2Fsrc)
Ρ Π³ΠΎΡΠΎΠ²ΠΎΠΉ ΡΠ°Π·ΠΌΠ΅ΡΠΊΠΎΠΉ, ΡΡΠΈΠ»ΡΠΌΠΈ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Π½ΡΠΌΠΈ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ² Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ
Π·Π°Π΄Π°Π½ΠΈΡ. Π‘ΠΊΠΎΠΏΠΈΡΡΠΉ ΠΈΡ ΡΠ΅Π±Π΅ Π² ΠΏΡΠΎΠ΅ΠΊΡ, ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π·Π°ΠΌΠ΅Π½ΠΈΠ² ΠΏΠ°ΠΏΠΊΡ `src` Π²
[parcel-project-template](https://github.com/goitacademy/parcel-project-template).### ΠΠ°Π΄Π°Π½ΠΈΠ΅ 1 - Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° `SimpleLightbox`
ΠΡΠΏΠΎΠ»Π½ΡΠΉ ΡΡΠΎ Π·Π°Π΄Π°Π½ΠΈΠ΅ Π² ΡΠ°ΠΉΠ»Π°Ρ `01-gallery.html` ΠΈ `01-gallery.js`. Π Π°Π·Π±Π΅ΠΉ Π΅Π³ΠΎ Π½Π°
Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ:1. ΠΠΎΠ±Π°Π²Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ [SimpleLightbox](https://simplelightbox.com/) ΠΊΠ°ΠΊ
Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ `npm` (ΡΡΡΠ»ΠΊΠ° Π½Π° CDN ΠΈΠ· ΡΠ²ΠΎΠ΅ΠΉ ΠΏΡΠΎΡΠ»ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ
Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½ΡΠΆΠ½Π°).
2. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉ ΡΠ²ΠΎΠΉ JavaScript ΠΊΠΎΠ΄ ΠΈΠ· ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ Π΄ΠΎΠΌΠ°ΡΠ½Π΅ΠΉ ΡΠ°Π±ΠΎΡΡ, Π½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈ
ΡΠ΅ΡΠ°ΠΊΡΠΎΡΠΈΠ½Π³ Ρ ΡΡΠ΅ΡΠΎΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π±ΡΠ»Π° ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π° ΡΠ΅ΡΠ΅Π· `npm`
(ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ import/export).ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ CSS ΠΊΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π² ΠΏΡΠΎΠ΅ΠΊΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΅ΡΠ΅
ΠΎΠ΄ΠΈΠ½ ΠΈΠΌΠΏΠΎΡΡ, ΠΊΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠΏΠΈΡΠ°Π½ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.```
// ΠΠΏΠΈΡΠ°Π½ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ
import SimpleLightbox from "simplelightbox";
// ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΈΠΌΠΏΠΎΡΡ ΡΡΠΈΠ»Π΅ΠΉ import
"simplelightbox/dist/simple-lightbox.min.css";
```### ΠΠ°Π΄Π°Π½ΠΈΠ΅ 2 - Π²ΠΈΠ΄Π΅ΠΎ ΠΏΠ»Π΅Π΅Ρ
Π HTML Π΅ΡΡΡ `` Ρ Π²ΠΈΠ΄Π΅ΠΎ Π΄Π»Ρ Vimeo ΠΏΠ»Π΅Π΅ΡΠ°. ΠΠ°ΠΏΠΈΡΠΈ
ΡΠΊΡΠΈΠΏΡ ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΡΠ΅ΠΊΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π²ΠΈΠ΄Π΅ΠΎ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ΅
Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΠΈ, ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ, ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π²ΠΈΠ΄Π΅ΠΎ Ρ ΡΡΠΎΠ³ΠΎ
Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.```
```
ΠΡΠΏΠΎΠ»Π½ΡΠΉ ΡΡΠΎ Π·Π°Π΄Π°Π½ΠΈΠ΅ Π² ΡΠ°ΠΉΠ»Π°Ρ `02-video.html` ΠΈ `02-video.js`. Π Π°Π·Π±Π΅ΠΉ Π΅Π³ΠΎ Π½Π°
Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ:1. ΠΠ·Π½Π°ΠΊΠΎΠΌΡΡΡ Ρ
[Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΉ](https://github.com/vimeo/player.js/#vimeo-player-api)
Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Vimeo ΠΏΠ»Π΅Π΅ΡΠ°.
2. ΠΠΎΠ±Π°Π²Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ ΠΊΠ°ΠΊ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ΅ΡΠ΅Π· `npm`.
3. ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠΉ ΠΏΠ»Π΅Π΅Ρ Π² ΡΠ°ΠΉΠ»Π΅ ΡΠΊΡΠΈΠΏΡΠ° ΠΊΠ°ΠΊ ΡΡΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² ΡΠ΅ΠΊΡΠΈΠΈ
[pre-existing player](https://github.com/vimeo/player.js/#pre-existing-player),
Π½ΠΎ ΡΡΡΠΈ ΡΡΠΎ Ρ ΡΠ΅Π±Ρ ΠΏΠ»Π΅Π΅Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΊΠ°ΠΊ npm ΠΏΠ°ΠΊΠ΅Ρ, Π° Π½Π΅ ΡΠ΅ΡΠ΅Π· CDN.
4. Π Π°Π·Π±Π΅ΡΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΌΠ΅ΡΠΎΠ΄Π°
[on()](https://github.com/vimeo/player.js/#onevent-string-callback-function-void)
ΠΈ Π½Π°ΡΠ½ΠΈ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΡΠΎΠ±ΡΡΠΈΠ΅
[timeupdate](https://github.com/vimeo/player.js/#events) - ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ
Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ.
5. Π‘ΠΎΡ ΡΠ°Π½ΡΠΉ Π²ΡΠ΅ΠΌΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅. ΠΡΡΡΡ ΠΊΠ»ΡΡΠΎΠΌ Π΄Π»Ρ
Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° Π±ΡΠ΄Π΅Ρ ΡΡΡΠΎΠΊΠ° `"videoplayer-current-time"`.
6. ΠΡΠΈ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ
[setCurrentTime()](https://github.com/vimeo/player.js/#setcurrenttimeseconds-number-promisenumber-rangeerrorerror)
Π΄Π»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ.
7. ΠΠΎΠ±Π°Π²Ρ Π² ΠΏΡΠΎΠ΅ΠΊΡ Π±ΠΈΠ±ΠΈΠ»ΠΎΡΠ΅ΠΊΡ
[lodash.throttle](https://www.npmjs.com/package/lodash.throttle) ΠΈ ΡΠ΄Π΅Π»Π°ΠΉ
ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ Π²ΡΠ΅ΠΌΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ»ΠΎΡΡ Π² Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π½Π΅ ΡΠ°ΡΠ΅ ΡΠ΅ΠΌ ΡΠ°Π· Π²
ΡΠ΅ΠΊΡΠ½Π΄Ρ.### ΠΠ°Π΄Π°Π½ΠΈΠ΅ 3 - ΡΠΎΡΠΌΠ° ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΉ ΡΠ²ΡΠ·ΠΈ
Π HTML Π΅ΡΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΊΠ° ΡΠΎΡΠΌΡ. ΠΠ°ΠΏΠΈΡΠΈ ΡΠΊΡΠΈΠΏΡ ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ
Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΡΠΎ-ΡΠΎ ΠΏΠ΅ΡΠ°ΡΠ°Π΅Ρ.```
Message
Submit```
ΠΡΠΏΠΎΠ»Π½ΡΠΉ ΡΡΠΎ Π·Π°Π΄Π°Π½ΠΈΠ΅ Π² ΡΠ°ΠΉΠ»Π°Ρ `03-feedback.html` ΠΈ `03-feedback.js`. Π Π°Π·Π±Π΅ΠΉ Π΅Π³ΠΎ
Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ:1. ΠΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΠΉ Π½Π° ΡΠΎΡΠΌΠ΅ ΡΠΎΠ±ΡΡΠΈΠ΅ `input`, ΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· Π·Π°ΠΏΠΈΡΡΠ²Π°ΠΉ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ΅
Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡ Ρ ΠΏΠΎΠ»ΡΠΌΠΈ `email` ΠΈ `message`, Π² ΠΊΠΎΡΠΎΡΡΡ ΡΠΎΡ ΡΠ°Π½ΡΠΉ ΡΠ΅ΠΊΡΡΠΈΠ΅
Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ ΡΠΎΡΠΌΡ. ΠΡΡΡΡ ΠΊΠ»ΡΡΠΎΠΌ Π΄Π»Ρ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° Π±ΡΠ΄Π΅Ρ ΡΡΡΠΎΠΊΠ°
`"feedback-form-state"`.
2. ΠΡΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΡΠΎΠ²Π΅ΡΡΠΉ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°, ΠΈ Π΅ΡΠ»ΠΈ ΡΠ°ΠΌ Π΅ΡΡΡ
ΡΠΎΡ ΡΠ°Π½Π΅Π½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, Π·Π°ΠΏΠΎΠ»Π½ΡΠΉ ΠΈΠΌΠΈ ΠΏΠΎΠ»Ρ ΡΠΎΡΠΌΡ. Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΠΎΠ»Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ
Π±ΡΡΡ ΠΏΡΡΡΡΠΌΠΈ.
3. ΠΡΠΈ ΡΠ°Π±ΠΌΠΈΡΠ΅ ΡΠΎΡΠΌΡ ΠΎΡΠΈΡΠ°ΠΉ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΠΈ ΠΏΠΎΠ»Ρ ΡΠΎΡΠΌΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ²ΠΎΠ΄ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡ Ρ
ΠΏΠΎΠ»ΡΠΌΠΈ `email`, `message` ΠΈ ΡΠ΅ΠΊΡΡΠΈΠΌΠΈ ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ Π² ΠΊΠΎΠ½ΡΠΎΠ»Ρ.
4. Π‘Π΄Π΅Π»Π°ΠΉ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ»ΠΎΡΡ Π½Π΅ ΡΠ°ΡΠ΅ ΡΠ΅ΠΌ ΡΠ°Π· Π² 500 ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π΄ΠΎΠ±Π°Π²Ρ Π² ΠΏΡΠΎΠ΅ΠΊΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ
[lodash.throttle](https://www.npmjs.com/package/lodash.throttle).