Size: a a a

JavaScript.Ninja

2021 April 28

I

Ivan in JavaScript.Ninja
А возврат функции стрелки не решит этот вопрос ?
источник

VL

Vova Levchenko in JavaScript.Ninja
вы осваиваете архитектуру чисто из практики и опыта?
источник

I

Ivan in JavaScript.Ninja
решит
источник

AM

Alex Makarov in JavaScript.Ninja
Богдан, Вас случайно не Дмитрий зовут? :)
источник

AM

Alex Makarov in JavaScript.Ninja
практика/опыт/изучение существующих решений/отрывочные статьи.
фундаментальные книжки тож почитываю иногда, но к сожалению не видел хороших фундаментальных книжек по архитектуре.
Начнем с того что вопрос "что же такое архитектура" уже вызывает ожесточенные споры
источник

VL

Vova Levchenko in JavaScript.Ninja
понятно, думаю здесь опыт ценнее всего
источник

AM

Alex Makarov in JavaScript.Ninja
В общем я программирование воспринимаю как исключительно прикладнуху. Потому что пришел через мат образование, а после мат образования самые ожесточенные теоретические споры в программировании воспринимаются с ухмылкой, потому что обычно даже до определения понятий не доходят.
источник

j

john john in JavaScript.Ninja
Я пытаюсь понять, зачем нам нужен JSON.stringify (data) при предварительном рендеринге SSR - Next.js данных для клиента.
я читал в документации react-query (link - https://react-query.tanstack.com/guides/ssr -
ПРИМЕЧАНИЕ ПО БЕЗОПАСНОСТИ: Сериализация данных с помощью JSON.stringify
может подвергнуть вас риску XSS-уязвимостей), что использование JSON.stringify () - не лучшая практика.
и нам лучше использовать пакет npm serialize-javascript - link
https://medium.com/node-security/the-most-common-xss-vulnerability-in-react-js-applications-2bdffbcc1fa0
export async function getServerSideProps(context) {
 // const { req, res } = context;
 const { appToken } = nookies.get(context);
 let isAdmin = false;

 const fetchDataFromBackEnd = async () => {
   const result = await fetchData();
   // return JSON.stringify(result);
   return serialize(result, { isJSON: true });
 };

 try {
   const { email } = await admin.auth().verifyIdToken(appToken);
   const { role } = await currentUser(email);

   if (role === 'admin') isAdmin = true;

   // Using Hydration
   const queryClient = new QueryClient();
   await queryClient.prefetchQuery('categoryList', fetchDataFromBackEnd);

   return {
     props: {
       token: appToken,
       isAdmin: isAdmin,
       dehydratedState: dehydrate(queryClient),
     },
   };
 } catch (error) {
   console.log(error);
   if (error) {
     return {
       //notFound: true,
       redirect: { destination: '/login', permanent: false },
     };
   }
 }
}
источник

M

Maksym in JavaScript.Ninja
Ребят я запутался ппц, смотрите, вызвал функцию через пропс, она изменила с true на false в редакс стейт(смотрел проверял), а сам el.statusFollow не изменился, он не смотрит с редакс state а тот обьект что в классе через пропс сначало передал? что делать?)
источник

M

Michael in JavaScript.Ninja
Братан, не в обиду, но у тебя стращный говнокод
источник

M

Maksym in JavaScript.Ninja
а че там плохо? подскажи
источник

M

Michael in JavaScript.Ninja
Все) Посмотри хоть курсы какие-то по реакту, как вообще выглядят компоненты
источник

M

Maksym in JavaScript.Ninja
так не полный скрин
источник

M

Maksym in JavaScript.Ninja
источник

M

Michael in JavaScript.Ninja
Как минимум:
1. Не задавать JSX как проперти обхекта (18 строка)
2. Не ассайнь textContent. Для этого есть JSX
источник

SE

Software Engineer in JavaScript.Ninja
источник

M

Michael in JavaScript.Ninja
Мне рематч нравится
источник

AM

Alex Makarov in JavaScript.Ninja
еще могу добавить "настрой блин преттиер плз", "выкинь к черту бэм если у тебя есть цсс модули"
источник

VV

Vladislav Verner in JavaScript.Ninja
друзья, прошу прощения
курс по graphQL уже можно смотреть или его не выкладывали? Я купил в начале апреля впервые, должна какая-то рассылка на почту?
источник

AM

Alex Makarov in JavaScript.Ninja
Вообще этот код можно давать мидлам на собесе в вопросе "найди стопицот косяков в коде" и посмотреть что скажут
источник