Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Как я в студенчестве подсел на компьютеры одного бренда и, повзрослев, встретил их снова
Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
rockon404

Антон Спирин

Frontend Developer
  • 2336
    вклад
  • 1
    вопрос
  • 1758
    ответов
  • 79%
    решений
Комментарии
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • GIT-хостинг - удобный, простой, тупой - есть ли?

    rockon404
    Антон Спирин @rockon404
    alternativshik, по мне, лучше переключаться в ветку с говорящим названием вроде lesson-1/bla-bla-bla.
    Написано более года назад
  • Простые open source проекты на JS для их 'разбора'?

    rockon404
    Антон Спирин @rockon404 Куратор тега React
    connecter, работать возьмут со знаниями. Хорошо изучите предметную часть. Если вы идете джуном, от вас ждут не идеальной чистой архитектуры, а знание языка, его особенностей, сопутствующих инструментов и технологий, и умение решать с помощью всего перечисленного простые типовые задачи.
    Конечно хорошо, если идете работать на React иметь какой-нибудь типовой WeatherApp на Github, если на node - REST api и тд. Во многих компаниях такой репозиторий даже прокатит вместо тестового задания.
    Написано более года назад
  • Где найти наставника по программированию или сообщества для совместной разработки?

    rockon404
    Антон Спирин @rockon404
    Если наставник будет просить менее 30$ долларов в час за индивидуальные занятия, то учиться у этого человека скорей всего нечему.
    Написано более года назад
  • Можно ли как-нибудь для одного сайта создать несколько куки со своими сроками истечения?

    rockon404
    Антон Спирин @rockon404
    sorry_i_noob, смотря какой инструмент вы используете. Технически вам надо просто добавить заголовки в ответ.
    Написано более года назад
  • Где взять стоп слова?

    rockon404
    Антон Спирин @rockon404
    Elbakidze, Bce иH∂иBи∂yаJIkи твоего г0родα. 3B0ни. Ноmер и прαйc Hа Փ0Tо.
    Написано более года назад
  • Как изменить бесполезный повтор маршрута?

    rockon404
    Антон Спирин @rockon404 Куратор тега React
    Durin Qurkingo, все варианты представленные тут являются нормой. Если вам надо обрабатывать четыре конкретных маршрута(A|B|C|D) и выводить для них одну и ту же информацию, то смело используйте.
    Если все-таки надо перехватывать параметр, но значения могут быть только A|B|C|D, то можно написать так:

    <Route path="/:letter(A|B|C|D)/xx/xxx/:feeros" component={About} />


    У вас будет два параметра:

    const { letter, feeros } = match.params;

    letter при этом может быть только: "A", "B", "C" или "D"
    Написано более года назад
  • Как изменить бесполезный повтор маршрута?

    rockon404
    Антон Спирин @rockon404 Куратор тега React
    Shakir Darion, работает. У вас в компоненте x ошибка. Правильно так:
    const x = ({ match }) => {
      console.log(match.url);
      return <div>{match.url}</div>;
    };


    Если бы не работало, то вы бы видели на странице цифру 3.
    Написано более года назад
  • Как изменить бесполезный повтор маршрута?

    rockon404
    Антон Спирин @rockon404 Куратор тега React
    Shakir Darion, например так:
    <Route path="/([a-zA-Z])/xx/xxx/:feeros" component={About} />

    Маршрут будет работать для одной латинской буквы, например:

    '/A/xx/xxx/value'
    '/s/xx/xxx/value'
    '/F/xx/xxx/value'


    Вы можете использовать и другое регулярное выражение.
    Более того, вы можете использовать регулярные выражения для параметров:

    <Route path="/([a-zA-Z])/xx/xxx/:feeros(\d{2})" component={About} />

    Совпадет с маршрутами со значениями feeros из двух цифр:

    '/A/xx/xxx/11'
    '/s/xx/xxx/21'
    '/F/xx/xxx/45'
    Написано более года назад
  • Как работает библиотека co?

    rockon404
    Антон Спирин @rockon404
    Так откройте исходный код и посмотрите. Там всего 239 строк, большая часть их которых комментарии и символы переноса.
    Написано более года назад
  • Как собрать create-react-app без минификации?

    rockon404
    Антон Спирин @rockon404 Куратор тега React
    Павел Третьяков,
    Минифицированные функции, с измененным именем, которые передаются во фреймы, не могут быть вызваны в нём, так как имя всегда разное (точнее имена функций используемые в передаваемой функции).

    Тут уже проблема в непонимании того, как работает webpack.
    Для решения подобной проблемы поможет банальное:
    window.myVariable = myVariable;
    А вот отсутствие минификации тут никак не поможет, так как модули вашего приложения инкапсулированы сборщиком и находятся в отдельном пространстве имен.
    Написано более года назад
  • Что такое документация и с чем её едят (как правильно, как лучше?)?

    rockon404
    Антон Спирин @rockon404
    Посылать к гуглу не лучший вариант. Я делал это, но при поиске очень много воды.

    Учитесь отделять зерна от плевел. Иначе толку от вас, как от разработчика, почти 0.
    Написано более года назад
  • В чем здесь ошибка?

    rockon404
    Антон Спирин @rockon404
    BD_ l3ftoverZ!, ну понятие болееверности и красивости в подобных случаях очень субъективно. В вопросе был именно getElementsByClassName, грех не показать пример его использования.
    Работа с прототипами и методами call и apply так же важная и интересная тема для новичков, как по мне.

    Или хотя бы

    Это не кроссбраузерное решение, так же как и Array.from.

    const items = document.getElementsByClassName('gLFyf gsfi');
    
    Array.from(items).forEach(function(item) {
        item.innerHTML = '111';
    });
    Написано более года назад
  • В чем здесь ошибка?

    rockon404
    Антон Спирин @rockon404
    Tyni4ek, добавил пару примеров.
    Написано более года назад
  • Хрустит пищит macbook, в чем может быть проблема?

    rockon404
    Антон Спирин @rockon404
    Когда жадность побеждает в бою со здравым смыслом.
    Написано более года назад
  • Как собрать create-react-app без минификации?

    rockon404
    Антон Спирин @rockon404 Куратор тега React
    Павел Третьяков, на вопрос вам ответили выше, не вижу смысла повторяться.
    Попробуйте обосновать необходимость в отключении минификации, при наличии source maps. Когда даже в production сборке вы видите в панели разработчика все исходные коды вплоть до node_modules.
    Если у вас возникла подобная потребность, то вы что-то делаете не правильно.
    Ну и вишенка на торте это то, что в development режиме никакой минификации нет и так же используются source maps, при этом некоторые пакеты попадают в сборку в development версиях.
    Написано более года назад
  • Можно ли в react использовать компонент вместо Router?

    rockon404
    Антон Спирин @rockon404 Куратор тега React
    Дмитрий Белов, да, примерно так.
    Написано более года назад
  • Можно ли в react использовать компонент вместо Router?

    rockon404
    Антон Спирин @rockon404 Куратор тега React
    Дмитрий Белов, ну хранить в базе страницы, по мне, не очень правильно. Это как-никак описание представления, которое может поменяться.
    Лучше просто иметь список недопустимых имен, это в дополнение к регулярке, которая будет проверять на недопустимые символы.
    А список не должен ограничиваться вашими текущими страницами, надо смотреть на будущее. Подобные списки можно найти в интернете. Например.
    Написано более года назад
  • Можно ли в react использовать компонент вместо Router?

    rockon404
    Антон Спирин @rockon404 Куратор тега React
    Дмитрий Белов, смотрите. Возьмем наш многострадальный пример:
    <Switch>
      <Route exact path="/" component={Main} />
      <Route path="/help" component={Help} />
      <Route path="/:user_name" component={User} />
    </Switch>

    Если вы делаете запрос "domain/" и получаете главную, а авторизованного пользователя, скорей всего сразу должно футболить на его страницу или фид. Если вы делаете запрос "domain/help", то получаете страницу помощи.
    Таких страниц скорей всего будет с десяток.
    Если цикл в Switch дойдет до последнего маршрута, то будет отрисован компонент User, что бы там не было location. Тут варианта у нас два: либо пользователь, либо 404. Делаем запрос в базу и если нашли пользователя, то отрисовываем компонент, если нет, то отображаете 404. Вот и все.

    Компоненты Route и Switch тут нужны для удобной и интуитивной организации ваших маршрутов.
    Можно их рендерить так:
    <Switch>
      {routes.map((route, i) => (
        <Router
          exact={route.isExact}
          key={route.path + i}
          path={route.path}
          component={route.Component}
        />
      )}
    </Switch>


    Еще надо подумать о резервировании имен, чтобы потом не забирать у пользователей имена вроде rules, promo, bookmarks и прочего.

    Я не понимаю, где вы пытаетесь выйграть на отказе от использования Switch и Route, и какие проблемы видите в их использовании.
    Написано более года назад
  • Можно ли в react использовать компонент вместо Router?

    rockon404
    Антон Спирин @rockon404 Куратор тега React
    Дмитрий Белов, а зачем делать запрос чтобы узнать о существовании страницы, если клиент и так знает какие страницы существуют?
    Так-то на мощностях react-router можно и свою логику сравнения маршрутов реализовать. Но какой в этом смысл?
    Еще надо учитывать, что часть маршрутов у вас будет protected, а с части надо будет перебрасывать авторизованного пользователя.
    Написано более года назад
  • Можно ли в react использовать компонент вместо Router?

    rockon404
    Антон Спирин @rockon404 Куратор тега React
    Дмитрий Белов, а как вы собрались осуществлять навигацию по своему приложению? Вот для этих целей и нужен.

    Если я могу создать компоненту, обернуть ее в withRouter()

    Без использования react-router? :) Если я не ошибаюсь, ваш вопрос звучал:

    Всем привет, подскажите, можно ли использовать компонент вместо react-router


    Вы, конечно, можете делать как вам хочется, но я настоятельно рекомендую использовать инструменты по их прямому назначению.
    Написано более года назад
  • ← Предыдущие
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • Следующие →
Самые активные сегодня
  • SoreMix
    SoreMix
    • 12 ответов
    • 0 вопросов
  • firedragon
    Владимир Коротенко
    • 8 ответов
    • 0 вопросов
  • sergiks
    Сергей Соколов
    • 7 ответов
    • 0 вопросов
  • Drno
    • 6 ответов
    • 0 вопросов
  • delphinpro
    Сергей delphinpro
    • 5 ответов
    • 0 вопросов
  • DevMan
    DevMan
    • 5 ответов
    • 0 вопросов
  • © Habr
  • О сервисе
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации