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

обратная связь: t.me/dmorenogogoleva
Download Telegram
code_notes pinned a photo
разница между атрибутами тега script (async/defer)

- порядок скриптов defer сохраняется браузером
- скрипт с defer сработает только после того как весь html документ будет обработан браузером
jwt token

содержит:
- header
- payload
- signature

header & payload — обычные json-объекты, их нужно закодировать через base64url

Закодированные части соединяются друг с другом, и на их основе вычисляется подпись, которая также становится частью токена
🔥1
реакт компонент перерендеривает своих детей если перерендеривается сам

pure-компонент перерендеривается только если у него изменились пропсы
отключить error overlay можно добавлением в webpack.dev.js:

  devServer: {
client: {
overlay: false,
},
🔥2
узнала сегодня про Reflect object

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Reflect

неоч понятно зачем он нужен, встретила в контексте работы с прокси

const person = {
name: "Julia",
age: 30
}

const personProxy = new Proxy(person, {
get: (obj, prop) => {
console.log(`The value of ${prop} is ${Reflect.get(obj, prop)}`)
},
set: (obj, prop, value) => {
console.log(`Changed ${prop} to ${value}`)
return Reflect.set(obj, prop, value)
}
})
code_notes pinned a photo
новые (для меня) хуки в реакте


useImperativeHandle — позволяет прокинуть коллбэк/объект со стейтом в родительский компонент через реф

useDebugValue — вешает лейбл на кастомный хук в реакт-девтулзах

useId — генерит id
👍1
useDebugValue
Forwarded from Daria Moreno-Gogoleva
так, я разобралась с useDebugValue

он работает, только в кастомных хуках, которые используют другие хуки......... что логично пушто хук без хуков это просто функция
я просто оставлю это здесь

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