
Роман
15.10.2018
18:07:46
И эти new Function разбиваются на части и так же раскидываются по коду.

Ростислав
15.10.2018
18:08:15
Спасибо ребята, ну мне не нужно преокт, хочу попробовать сам
то есть свои силы

Google

Ростислав
15.10.2018
18:08:23
смогу ли я
спросил чтобы сложность узнать
Ребята кто-то может кинуть хороший источник для изучения canvas?

ujeenator
15.10.2018
18:11:07

Viktor
15.10.2018
18:11:09
будет сложно
VS CODE оставляет пустое пространство

ujeenator
15.10.2018
18:12:19

Ростислав
15.10.2018
18:12:44
Спасибо)

Viktor
15.10.2018
18:12:53

Слафко
15.10.2018
18:12:58

Роман
15.10.2018
18:13:12
Во, уже лучше.

Google

Роман
15.10.2018
18:14:50

ujeenator
15.10.2018
18:15:02

Роман
15.10.2018
18:15:25

Viktor
15.10.2018
18:17:30

Роман
15.10.2018
18:17:41

Viktor
15.10.2018
18:19:00
Для VSCode?
да, оно как будто устарело)
https://marketplace.visualstudio.com/items?itemName=ShaneRay.InvisibleCharacterVisualizer

Роман
15.10.2018
18:21:14
Норм, наверное и для саблайма что-то должно быть.
Но в основном на любые запросы про невидимые символы ответы как пробелы и переносы строк показывать.

Саша
15.10.2018
18:25:01

Viktor
15.10.2018
18:26:23

Роман
15.10.2018
18:26:53

Viktor
15.10.2018
18:30:41
ну это в CSS смотри
какие классы и элементы фигурируют при перетаскивании в отладчике
обычно на месте старого элемента должен появиться пустой элемент-заместитель
декорируй его через стили
в консоли хрома в HTML должно это отображаться все

Роман
15.10.2018
18:37:13

Google

Viktor
15.10.2018
18:44:28
мои глаза :)

Роман
15.10.2018
18:45:00
мои глаза :)
Да он и проц сильно грузил и визуализация никакая. Удалил.

Vitaliy
15.10.2018
18:57:48
ребята, кто-то юзает https://element.eleme.io/#/en-US/component/datetime-picker ?

Никита
15.10.2018
19:00:08
Если берёшь дейтпикер – проверяй, как он выглядит на мобильниках. Этот на них выглядят откровенно погано.

Vitaliy
15.10.2018
19:01:21

Никита
15.10.2018
19:01:32
Можно костылями обложить, впрочем.

Vitaliy
15.10.2018
19:02:19

Никита
15.10.2018
19:03:28
На мобильном дейтпикер должен выглядеть так

Vitaliy
15.10.2018
19:04:17

Duego
15.10.2018
19:32:26
Как число окргулить до 2 знаков?
2.323 => 2.32
3.7002 => 3.7
4.0009 => 4

Ivan
15.10.2018
19:32:47

Duego
15.10.2018
19:33:10

Ivan
15.10.2018
19:35:47

Duego
15.10.2018
19:36:49


Dmitry
16.10.2018
05:22:03
В общем есть вопрос как кто делает отдельную версию мобилки сайта на реакте:
На текущий момент есть окологотовая версия десктопа и дальше ситуации:
1. html мобилки и десктопа для одного компонента отличается незначительно логикая идентичная
2. html отличается значительно при этом логика например работы со стором одинаковая, префетч данных одинаковый, какие-то события подгрузки данных тоже идентичные
3. html отличается значительно, логика тоже
и допустим у нас на уровне вебпака определена переменная IS_MOBILE как для каждого случая вы поступаете?
Пример ответа №1:
1. Прям в конкретном компоненте в render:
`
render() {
if (IS_MOBILE) {....} else {...}
}
2. Выносим рендеры в другие файлы, логика остается в текущем
index.js
let render = null;
if (IS_MOBILE) {
render = require('./mobile').default;
} else {
render = require('./desktop').default;
}
render() {
render = render.bind(this);
return render();
}
desktop.js
import './style.scss';
export default function render() {...}
mobile.js
import './mobile-style.scss';
export default function render() {...}
3. Делаем полностью отдельные компоненты <SomeComponent> и <MobileSomeCompoent>
————————————————————————————————
Пример ответа №2:
Копируем проект и полностью беззаботно переделываем что надо под мобилку, баги потом правим в двух версиях проекта, схожие фичи потом тоже дубликатим
————————————————————————————————-
Пример ответа №3:
Создаете 3 папочки: desktop, mobile, common
В common храните общие компоненты, логику и тд
В desktop и mobile хранятся специфические компоаненты и логи для платформы + верстка для каждой платформы
————————————————————————————————-
Ваш вариант ответа (неудачные решения из своей практики тоже можно и что было плохо и чем выстрелили себе в ногу)


Evgeniy
16.10.2018
05:51:07


vitaliy
16.10.2018
05:53:59
В общем есть вопрос как кто делает отдельную версию мобилки сайта на реакте:
На текущий момент есть окологотовая версия десктопа и дальше ситуации:
1. html мобилки и десктопа для одного компонента отличается незначительно логикая идентичная
2. html отличается значительно при этом логика например работы со стором одинаковая, префетч данных одинаковый, какие-то события подгрузки данных тоже идентичные
3. html отличается значительно, логика тоже
и допустим у нас на уровне вебпака определена переменная IS_MOBILE как для каждого случая вы поступаете?
Пример ответа №1:
1. Прям в конкретном компоненте в render:
`
render() {
if (IS_MOBILE) {....} else {...}
}
2. Выносим рендеры в другие файлы, логика остается в текущем
index.js
let render = null;
if (IS_MOBILE) {
render = require('./mobile').default;
} else {
render = require('./desktop').default;
}
render() {
render = render.bind(this);
return render();
}
desktop.js
import './style.scss';
export default function render() {...}
mobile.js
import './mobile-style.scss';
export default function render() {...}
3. Делаем полностью отдельные компоненты <SomeComponent> и <MobileSomeCompoent>
————————————————————————————————
Пример ответа №2:
Копируем проект и полностью беззаботно переделываем что надо под мобилку, баги потом правим в двух версиях проекта, схожие фичи потом тоже дубликатим
————————————————————————————————-
Пример ответа №3:
Создаете 3 папочки: desktop, mobile, common
В common храните общие компоненты, логику и тд
В desktop и mobile хранятся специфические компоаненты и логи для платформы + верстка для каждой платформы
————————————————————————————————-
Ваш вариант ответа (неудачные решения из своей практики тоже можно и что было плохо и чем выстрелили себе в ногу)
Если это отдельная версия, то и собирай отдельный бандл

Admin
ERROR: S client not available

Google

vitaliy
16.10.2018
05:54:56
Вариант с 3 папками классика

Dmitry
16.10.2018
05:59:17
№1 плохо тем, что куча логики if (IS_MOBILE) в текущем коде, всегда достаточно разные решения, где-то отельные компоненты, где-то внутри текущего изменения, непрозрачная логика, раздутый бандл для обоих версий, потому что постоянно следить за оборачиванием импортов жуткий гемор
№2 плохо сложностью правок и внесения нового функционала
№3 плохо тем, что сейчас придется очень сильно и много рефакторить, выстрелы в ногу будут постоянными, много копипасты по логике
Сам больше склоняюсь к варианту №1
ну а бандлы коненчо разные

vitaliy
16.10.2018
06:05:51

Dmitry
16.10.2018
06:07:06
1 - SSR
2 - хотя бы немного уменьшить размер бандлов для каждого типа устройства

vitaliy
16.10.2018
06:11:10
Кажется это не существенно вообще, когда ты будешь тонуть в море ифов
И ломать логику сразу для десктопа и мобилы)
Если сайт большой и много логики, отдельные версии лучший вариант

Dmitry
16.10.2018
06:12:02
не ну сервер то ничего не знает о разрешении, так что бандлы все равно делятся) а размер действительно не очень существенен)

vitaliy
16.10.2018
06:12:45
3
Вот тогда отдельные бандлы точно будут иметь смысл что для клиента, что для ssr. И сможешь независимо выкатывать десктоп и мобильный сайт

Dmitry
16.10.2018
06:19:37
что на счет логики в варианте 3? например логика работы со стором одинаковая, префетч данных одинаковый, какие-то события подгрузки данных тоже идентичные, рендер отличается полностью, делаем соответственно два компонента, логику пытаемся переиспользовать? или просто копипастим?
Если пытаемся переиспользовать, то будет очень похоже на пункт 2 из варианта 1

vitaliy
16.10.2018
06:21:18
Выносишь на common уровень все редьюсеры и экшены, или что там)

Dmitry
16.10.2018
06:22:17
ну это да, но есть еще некоторое количество функций на уровне компонента, например подстановка get параметров в урл в зависимости от выбраных фильтров и всякое похожее, с ней как быть?

vitaliy
16.10.2018
06:23:03
Ну по идее такие вещи должны быть максимально абстрагированными, чтобы их точно можно было внести на common уровень

Dmitry
16.10.2018
06:26:13
теоретически все методы компонента можно зарефакторить чтобы this не оспользовался и сделать их чистыми, но практически в рамках достпуного времени не представляю это реальным

vitaliy
16.10.2018
06:34:06
Тогда это вопрос планированию и менеджменту, если изначально о мобильной версии никто не говорил, а сейчас она вдруг нужна, то придётся терпеть. Но и смотря что за проект, если думаешь что более года жизни ему не светит, то делай как быстрее))
Я бы как-то так рассуждал)


Эйчар
16.10.2018
06:54:17
#вакансия #react #remote #удаленно #фултайм #fulltime
Город: Москва
Что придется делать:
В новую газету ищем фронтенд-разработчика, который будет дописывать сайт (https://novayagazeta.ru/) и работать вместе с бекенд разработчиком
Что мы ждем от тебя:
— Отличное владение JavaScript, как же без этого
— Знание CSS и HTML
— Опыт работы с React и Redux
— Уметь обращаться с Git
— Уметь разворачивать проекты с помощью Docker, деплоить, и работать в среде Linux
— Опыт работы от года, если опыта меньше или нет совсем, но очень хотите работать в новой, готовы рассматривать в индивидуальном порядке
Что предложим:
— от 70.000₽ до 100.000₽ (на руки)
— Полностью удаленную работу, нужно лишь синхронизироваться с 11:00 до 16:00 по мск
Контакты: @novayagazetaHR

Google

Dasha Shvec
16.10.2018
10:03:14
Ребят. А есть те, кто из Украины и умеет опыт работы с питоном и с++ ?


G
16.10.2018
10:26:15
Hackathon RAIF 2018 | 23 октября | Москва
В рамках масштабного делового форума RAIF (The Russian Artificial Intelligence Forum) состоится финал Hackathon RAIF 2018. Регистрация открыта с 25 сентября.
?Призовой фонд составит более 1 000 000 рублей ?
К участию приглашаются разработчики, которые хотят попробовать свои силы в направлении Machine Learning.
Партнерами хакатона выступят «Утконос», Росреестр и НЛМК. Участникам будет предложено решить задачи в следующих направлениях:
⚡Оптимизация процессов производства;
⚡Анализ спроса на товары;
⚡Прогнозирование кадастровой стоимости объектов.
?Онлайн-тур — с 4 по 19 октября включительно
В рамках первого онлайн-этапа будут отобраны 10 команд-победителей
?Оффлайн-тур и финал — 23 октября
Финалистов ждут 4 часа доработки кода и защита своего проекта перед жюри.
? Регистрация и подробная информация доступны по ссылке: http://raif.jet.su/hackathon/
?Место проведения: Москва, Кутузовский пр-т, д. 2/1, стр. 1., Конгресс-парк «Рэдиссон Ройал Москва»
#hackathonraif2018


Sasha
16.10.2018
10:31:48
Есть ли в js .pop() для объектов? Почему-то найти не могу в доках

vitaliy
16.10.2018
10:32:26
потому что нет .pop() для обьектов

Yura
16.10.2018
10:32:30

Sasha
16.10.2018
10:33:46
Ну ладно, понял