ΠΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎΠΉ Π±Π»ΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠΈΡΠ°ΡΡ Π²ΡΠ΅ΠΌΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΡΠ°Π½ΠΈΡΡ Π² ΡΠ°Π·ΡΠ΅Π·Π΅ i-bem.js
Π±Π»ΠΎΠΊΠΎΠ². ΠΡΠΎ Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ ΠΏΡΡΡΠΌ ΠΎΠ±ΠΎΡΠ°ΡΠΈΠ²Π°Π½ΠΈΡ Π²ΡΠ·ΠΎΠ²Π° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ° Π±Π»ΠΎΠΊΠ° Π² ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΡΠΈΡΠ°Π΅Ρ Π΄Π²Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ
Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ:
- ΡΠ°Π±ΠΎΡΡ ΠΌΠ΅ΡΠΎΠ΄Π°
__constructor
, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎ ΡΠ°ΠΊΡΡ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ Π²ΡΠ·ΠΎΠ²onSetMod: { js: function() {} }
; - ΡΠ°Π±ΠΎΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²
afterCurrentEvent
Π²ΡΠ·Π²Π°Π½Π½ΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π±Π»ΠΎΠΊΠ°.
ΠΠ»ΠΎΠΊ Π½Π΅ ΡΡΠΈΡΠ°Π΅Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»ΡΠΆΠ΅Π±Π½ΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ ΡΡΠ½ΠΊΡΠΈΠΉ Π²ΡΠΎΠ΄Π΅:
- ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ° Π±Π»ΠΎΠΊΠΎΠ² Ρ
js
-ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΏΠΎ ΡΠ΅Π»Π΅ΠΊΡΠΎΡΡi-bem
; - ΡΠ°Π·Π±ΠΎΡΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ²
data-bem
.
ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΡΡ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ 3000ms
ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ±ΡΡΠΈΡ DOMContentLoaded
ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ Π² ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΡΠ΅ΡΠ΅Π· console.table, console.log
.
block | time |
---|---|
b-page | 300 |
footer | 30 |
link | 4 |
Π Π²Π°ΡΠΈΠ°Π½ΡΠ΅ console.log
ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π²ΡΠ΅ΠΌΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ½ΡΡΠ°Π½ΡΠ°, ΠΏΡΠΎΠΈΠ½ΡΠΏΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ DOMElement
.
ΠΠ° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π· bower
ΠΈ ΡΠ±ΠΎΡΠΊΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ enb
, ΡΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π½Π° ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ²Π½Ρ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ bem-profiler/common.blocks
ΡΠΎΠ»ΡΠΊΠΎ Π² development
-ΡΠ΅ΠΆΠΈΠΌΠ΅.
ΠΡΠΈ ΡΡΠΎΠΌ Π½ΠΈΠΊΡΠΎ Π½Π΅ ΠΌΠ΅ΡΠ°Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ΄ Π±Π»ΠΎΠΊΠ° ΠΈ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΠΎΠ΄ΠΌΠ΅ΡΠΈΠ²Π°ΡΡ Π² ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡΠ΄Ρ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ, Π΄Π΅Π»Π°ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ΡΠΊΡΡ ΡΡΡΠ»ΠΊΡ Π½Π° ΡΡΠΎΡ ΡΡΠΎΠ²Π΅Π½Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, ΠΈΠ»ΠΈ Π²ΡΠ½ΠΎΡΠΈΡΡ ΠΊΠΎΠ΄ Π² ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»Π΅ΠΌΠ΅Π½Ρ debug
ΠΈ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΠΌ ΡΠ΅ΡΠ΅Π· deps.js
. ΠΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅ΠΌ PR ΠΈ ΠΏΠΎΠΆΠ΅Π»Π°Π΅Π½ΠΈΡ ;)
ΠΠ°ΠΆΠ½ΠΎ: ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ != Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡΠΊΡΡΡΡ ΡΡΡΠ°Π½ΠΈΡΡ Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ bem-profiler=1
, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
http://localhost/index?bem-profiler=1
.
Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π² Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΏΠΎΠ·Π²Π°ΡΡ BEM.profiler()
, ΠΎΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°Π² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ ΠΈΠΌΡ Π±Π»ΠΎΠΊΠ° BEM.profiler('header')
.