Який HTTP header вказує на тип даних/media поточного повідомлення?
Anonymous Quiz
3%
Accept
89%
Content-Type
6%
Content-Encoding
2%
Set-Cookie
👍11🔥3❤1🕊1
String as Component 🎭
А ви знали, що в React можна string відрендерити як компоненту?
Тут зовсім ніякої магії, просто JSX закриває від нас
А ви знали, що в React можна string відрендерити як компоненту?
const Component = "div";
return <Component>some content</Component>
Тут зовсім ніякої магії, просто JSX закриває від нас
React.createElement.👍9🔥2😱2⚡1
Decorators in JS 🎄
І хоч в самій специфікації ECMAScript декоратори на стадії пропозиції та плану, їх вже можна спробувати завдяки TypeScript чи Babel.
Отож, що воно таке? Почнемо з маленьких аналогій. Якщо ви працювали з Python, то можливо вже зустрічали там декоратори, і там вони працюють десь з таким ж принципом. Або ж, можливо, ви вивчали патерни і зустрічали там однойменний структурний патерн. Мета декораторів - динамічно навішати певний функціонал. Стандартний приклад - вивести повідомлення перед початком виконання функції та після її завершення.
Синтаксис використання декораторів. Перед оголошенням класу, його методу чи властивості необхідно додати імʼя декоратора з префіксом @. Наприклад:
Декоратори можуть створюватись динамічно, тому наступний синтаксис теж цілком можливий:
Як написати свої декоратори? Тут трохи більше деталей, тому ми думаємо, що краще використати документацію 🙂
Декоратори можна зустріти, наприклад, у NestJS, де зокрема з їх допомогою працює Dependency Injection.
👉 Відкрити документацію
👉 Відкрити статтю про патерн
#interview
І хоч в самій специфікації ECMAScript декоратори на стадії пропозиції та плану, їх вже можна спробувати завдяки TypeScript чи Babel.
Отож, що воно таке? Почнемо з маленьких аналогій. Якщо ви працювали з Python, то можливо вже зустрічали там декоратори, і там вони працюють десь з таким ж принципом. Або ж, можливо, ви вивчали патерни і зустрічали там однойменний структурний патерн. Мета декораторів - динамічно навішати певний функціонал. Стандартний приклад - вивести повідомлення перед початком виконання функції та після її завершення.
Синтаксис використання декораторів. Перед оголошенням класу, його методу чи властивості необхідно додати імʼя декоратора з префіксом @. Наприклад:
class Pokemon {
@log
attack() { }
}
Декоратори можуть створюватись динамічно, тому наступний синтаксис теж цілком можливий:
class Pokemon {
@log({ level: "debug" })
attack() { }
}
Як написати свої декоратори? Тут трохи більше деталей, тому ми думаємо, що краще використати документацію 🙂
Декоратори можна зустріти, наприклад, у NestJS, де зокрема з їх допомогою працює Dependency Injection.
Зверніть увагу, що в документації за посиланням нижче є банер з посиланням на статтю про декоратори із стадії 3.
👉 Відкрити документацію
👉 Відкрити статтю про патерн
#interview
👍12🔥2🤯2
👍7🤔5❤1
#todo написати функцію на будь-якій мові програмування, яка приймає масив чисел та повертає 2 найбільших числа.
❗️Обовʼязкова умова - не використовувати сортування.
❗️Обовʼязкова умова - не використовувати сортування.
🤔8👍4🤓2❤1
?n=u&q=s ❓
Часто хорошою практикою є використання певних параметрів у URL сторінки. Завдяки такій техніці можна легко поділитися посиланням та зберегти порядок сортування, фільтрування чи номер сторінки.
Але обробляти оце все - не найлегша робота. Потрібно парсити query параметри, реагувати на зміни і власне змінювати їх в посиланні, бажано через shallow роутинг (без перезавантаження сторінки).
Тож, якщо ви використовуєте Next.js, зверніть увагу на nuqs. Дуже проста і корисна бібліотека, яка дозволить працювати з query параметрами, як з звичайним станом в React.
👉 Відкрити посилання
#library
Часто хорошою практикою є використання певних параметрів у URL сторінки. Завдяки такій техніці можна легко поділитися посиланням та зберегти порядок сортування, фільтрування чи номер сторінки.
Але обробляти оце все - не найлегша робота. Потрібно парсити query параметри, реагувати на зміни і власне змінювати їх в посиланні, бажано через shallow роутинг (без перезавантаження сторінки).
Тож, якщо ви використовуєте Next.js, зверніть увагу на nuqs. Дуже проста і корисна бібліотека, яка дозволить працювати з query параметрами, як з звичайним станом в React.
👉 Відкрити посилання
#library
❤8🔥5👍3🤷1
Welcome!
Let's practice our English! So...
👉 If you could spend a day with any historical figure, who would it be and why?
Have a nice #english_friday 💛
Let's practice our English! So...
👉 If you could spend a day with any historical figure, who would it be and why?
Have a nice #english_friday 💛
👍4🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
#how_to створити shimmer wave text animation 🎉
Виконаний з допомогою HTML, SASS і JavaScript!
👉 Відкрити посилання
Виконаний з допомогою HTML, SASS і JavaScript!
👉 Відкрити посилання
👍4🔥2❤1
З цими салютами і відключеннями електрохарчування, забули прийняти ваші ставки - чи блокуватимуть Telegram?
Anonymous Poll
17%
Так
70%
Ні
13%
Ви про шо?
👍3❤1😁1
Що таке lock-файли та як з ними працювати? 🔒
В своїх проєктах ви часто можете помітити файл з назвою
Нехай у вас у
Також це своєрідний спосіб оптимізації, адже тоді менеджер пакетів швидше розуміє, які версії залежностей/підзалежностей потрібно інсталювати.
Lock-файли, на нашу думку, треба комітити, адже тоді у вас значно рідше виникатиме ситуація "працює на моєму компʼютері".
#interview
В своїх проєктах ви часто можете помітити файл з назвою
package-lock.json, yarn.lock, pnpm-lock.yaml чи bun.lockb. Ці файли містять зафіксовані версії всіх залежностей вашого проєкту, включно з версіями всіх підзалежностей. Це своєрідний "знімок" стану ваших залежностей у певний момент часу.Нехай у вас у
package.json зазначено, що вам потрібна залежність x версії ^1.0.0. Це означає, що використовуватись може будь-яка версія, сумісна з 1.0.0, наприклад 1.1.0 чи 1.0.1. Lock-файл зафіксує конкретну версію (наприклад 1.0.1) і це гарантує, що всі розробники чи сервери будуть використовувати точно цю ж саму версію.Також це своєрідний спосіб оптимізації, адже тоді менеджер пакетів швидше розуміє, які версії залежностей/підзалежностей потрібно інсталювати.
Lock-файли, на нашу думку, треба комітити, адже тоді у вас значно рідше виникатиме ситуація "працює на моєму компʼютері".
#interview
👍17❤2🔥1
🤔10👍8❤1
ts-reset 0.6.0 🧽
Ми розповідали про цю бібліотеку більше року тому, а нещодавно вона отримала оновлення. До речі, ми ще досі її використовуємо.
Коротко пригадаємо, що це взагалі таке.
ts-reset - це як css-reset, тільки для TypeScript. З ним
В останньому ж оновленні
👉 Відкрити посилання
👉 Відкрити пост у Twitter
#news
Ми розповідали про цю бібліотеку більше року тому, а нещодавно вона отримала оновлення. До речі, ми ще досі її використовуємо.
Коротко пригадаємо, що це взагалі таке.
ts-reset - це як css-reset, тільки для TypeScript. З ним
.filter(Boolean) повертатиме правильний тип, у вас не буде зайвих any від JSON.parse, а в includes можна буде передати будь-який string, навіть, якщо сам масив протипізований строгіше.В останньому ж оновленні
error в promise.catch має тип unknown, а не any, як раніше. Те саме стосується і Map, який створений без явного типізування:const map = new Map()
map.get("key") // раніше any, тепер unknown
👉 Відкрити посилання
👉 Відкрити пост у Twitter
#news
👍8❤1🔥1
Welcome!
Let's practice our English! So...
👉 If you could redesign any website or app, which one would it be and why?
Have a nice #english_friday 💛
Let's practice our English! So...
👉 If you could redesign any website or app, which one would it be and why?
Have a nice #english_friday 💛
👍3❤2
#how_to додати більше одного ref до елемента в React? 👀
function mergeRefs<T = unknown>(
...refs: (React.MutableRefObject<T> | React.LegacyRef<T>)[]
): React.RefCallback<T> {
return function (value) {
refs.forEach((ref) => {
if (typeof ref === 'function') {
ref(value)
} else if (ref !== null) {
;(ref as React.MutableRefObject<T | null>).current = value
}
})
}
}
// Example
const forwardedRef: React.ForwardedRef<HTMLInputElement>
const localRef = useRef<HTMLInputElement>()
<input ref={mergeRefs(forwarderRef, localRef)} />
👍6❤3
З 2 вересня вас! Якщо б ви мали можливість повернутись в якийсь період вашого життя, що це було?
Anonymous Poll
22%
Школа 📚
35%
Університет/коледж 🎓
10%
Робота 😎
33%
Нікуди не хочу мігрувати!
😁10👍2
Next.js Conference 🎙️
24 жовтня 2024 відбудеться конференція Next.js. Поки точних деталей немає, але ми впевнені, що буде цікаво.
Щоб отримати свій безкоштовний віртуальний квиток, потрібно заповнити невелику форму, посилання на яку ми додаємо нижче.
👉 Відкрити посилання
#news
24 жовтня 2024 відбудеться конференція Next.js. Поки точних деталей немає, але ми впевнені, що буде цікаво.
Щоб отримати свій безкоштовний віртуальний квиток, потрібно заповнити невелику форму, посилання на яку ми додаємо нижче.
👉 Відкрити посилання
#news
❤5👍3🔥2
🚀 Top 50+ React Interview Questions and Answers 2024
У цій статті було розглянуто питання на співбесіді з React, які охоплюють все, від базових до просунутих концепцій React, таких як Virtual DOM, компоненти, стан та пропси, JSX, хуки, маршрутизація та багато іншого. Незалежно від того, чи ви новачок, чи досвідчений розробник, дана стаття може стати вам в нагоді.
👉 Читати статтю
Зберігайте та користуйтесь 💛
#interview
У цій статті було розглянуто питання на співбесіді з React, які охоплюють все, від базових до просунутих концепцій React, таких як Virtual DOM, компоненти, стан та пропси, JSX, хуки, маршрутизація та багато іншого. Незалежно від того, чи ви новачок, чи досвідчений розробник, дана стаття може стати вам в нагоді.
👉 Читати статтю
Зберігайте та користуйтесь 💛
#interview
👍16🔥3❤1