code_notes
71 subscribers
136 photos
1 video
134 links
учусь делать веб

обратная связь: t.me/dmorenogogoleva
Download Telegram
я просто оставлю это здесь

export const usePreviousPersistent = <TValue extends unknown>(
value: TValue
) => {
const ref = useRef<{ value: TValue; prev: TValue | null }>({
value: value,
prev: null
});

const current = ref.current.value;

if (!isEqual(value, current)) {
ref.current = {
value: value,
prev: current
};
}

return ref.current.prev;
};

https://www.developerway.com/posts/implementing-advanced-use-previous-hook
👍1
when React components re-render:
• when component's state changed
• when parent component re-renders
• when a component uses context and the value of its provider changes
не очень верится
😁1
нарисовала граф, сделала к нему таблицу, потом нарисовала тот же граф по таблице

граф здорового человека/граф курильщика
code_notes pinned «когда-то я готовилась к собеседованиям по вот этому списку задачек https://github.com/lydiahallie/javascript-questions/blob/master/ru-RU/README.md»
code_notes
лучшая картинка про event loop
новая лучшая картинка про event loop
1
code_notes pinned «https://ru.hexlet.io/blog/posts/grokaem-algoritmy-gayd-po-algoritmam-dlya-teh-komu-slozhno-reshat-zadachi»
я отвернулась и в css добавили новую киллер-фичу

@layer

по-русски "каскадные слои"

теперь мы можем создавать свои слои вдобавок к существующим (user agent styles, user styles, author styles (те которые мы меняем))

в каскадных слоях важен порядок объявления — чем позже объявлен слой, тем он специфичнее

можно объявить все названия слоёв в начале документа чтобы не путаться

@layer reset, framework, layout, base;

запутанный момент — !important
правила, объявленные через important действуют в обратном порядке — important в слое reset будет специфичнее important в слое base
var status = '😎'

setTimeout(() => {
const status = '😍'

const data = {
status: '🥑',
getStatus() {
return this.status
}
}

console.log(data.getStatus())
console.log(data.getStatus.call(this))
}, 0)


🥑 😎