Serhii
только на фронте или и на беке?
Oleh
Фронт
Oleh
А что значит проходимая/непроходимая?
Serhii
а что если изменить значение об"экта через консоль и отключить валидацию? бек не будет проверять и сохранит?
Serhii
unobstructive validation - вынесение правил валидации в конфигурацию
Serhii
конфигурация используется и беком и фронтом для валидации
Serhii
реализация методов на фронте и на беке может быть похожа а если один язык - одинаковая
Serhii
я не находил удобной либы с реализацией потому сам и писал
Oleh
То есть бэк должен понимать, что ему должно прийти? А если фронт отправляет к примеру не все, то оно попросту не отправится?
Oleh
Покажи
Serhii
ой, там прототип который я так и не зарелизил ибо слишклм дорого стоил в часах
Serhii
но могу чисто принцип рассказать
Serhii
бек попросту будет валидировать и паралельно еще и шарить информацию валидаторов на фронт в жсоне к модели
Oleh
Давай, я вот тоже ничего не могу найти просто. Думаю попробовать что-то написать для себя
Serhii
главное понять - можешь ли ты автоматизировать вывод типа пропертей с бека
Oleh
Давай пока без бэка, хотя бы с фронтом надо разобраться
Serhii
в моем случае в дот нете создавались вью модели в которых описывались типы пропертей и если для них есть спец валидация - список валидаторов 'lengthMax', 'lengthMin'
Serhii
парень написал либу для экстракта информации о типе проперти и валидаторах а если это вложеные проперти - они обозначались ссылками-именами
Andrey
Вот и у меня сейчас траблы с валидацией. пишу кастомные регэкспы под поля, ибо на бэке просто это всё пересылается по почте куда надо.... Встал вот такой вопрос - кто-нибудь юзал гугловую либу для номера телефона? Стоит ли, или это для ынтырпрайза? link: https://github.com/googlei18n/libphonenumber
Serhii
тоесть на вход был плоский список полей и если были глубокие вложености, вместо описания их валидаторов, просто использовалось имя поля которое уже есть в корне жсона
Anonymous
когда сел за цссс спустя год
@ почему, это делается, не так как хочется
Anonymous
Serhii
ну а на фронте все сводилось к парсеру
Anonymous
самая популярная тема итт
Serhii
и конфигурации модели. ты ее описываешь, в жсоне ищется название проперти нарпимер name, считывается что тип name: 'String', и добавляется в список валидаторов метод проверки типа, а остальные валидаторы ['lenthMax', 'lengthMin'] так же копировались в список валидаторов
Serhii
а после отправки модели, тригерился метод проверить валидаторы, где по масиву исполнялись методы которые и были названиями валидаторов validator.lengthMax(property, model)
Serhii
еще этот жсон свалидациями помогал мне быть уверенным что бек ничего не запорол, и при получении спуска моделей я мог уже на старте прогнать валидацию по ним, все ли проперти что прислал бек на местах и имеют ли значение если есть валидатор required
Serhii
единственный + который покрывает затраченое время - автоматизация валидации. так как ты всеравно будешь описывать модель будешь на беке а фронт просто подхватывает идею без хардкода и без потом мержа если что то поменялось, забытых полей или легаси логики валидации
Serhii
все на уровне фреймворка бекенда
Serhii
понел?
Oleg
Изоморфное приложение
Anonymous
ну да, типо того, интересная задача была
Serhii
ну типа да, изоморф идеально ложится если 1 язык
Oleg
А если 2 то нужен третий, декларативный, например джейсон
Oleg
Или хмл
Serhii
а когда 2 разных, приходилось делать вью модель такой же как на беке,
Serhii
а в жсоне вместо пропертей у меня шло полный путь к проперт { model: 'User', props: [ { 'country.id': [required] } ] } и тд
Serhii
благо _.get лодаша мне идеально помогал искать по модели те проперти которые нужно валидировать
Serhii
вместо парсина всех и сравнения с моделью бека
Serhii
ибо да, приходилось бы еще 1 жсон для мапинга поддерживать что уже слишком
Serhii
хотя, это подход такой себе если бек шарит, потому что если на фронте даже убрать валидацию, при правилном подходе ответ на сохранение будет 500 - интернал еррор при создании записи в базе
Serhii
но в моем случае нужно всегда было показывать меседж невалидного поля
Loo
господа. подскажите пожалуйста - может ли graphql работать над веб-сокетами полностью? правильно ли я понимаю что сейчас - только подписки(сабскрипшенс) работаю через них? что, если я хочу всё пустить через оных? интересует клиентская хотя бы реализация
Serhii
угу, прикольн
Anonymous
реакт стикеры
Anonymous
😂
horpto
скорее просто html
Vladimir
а почему вы ищете джава джедая в группе по джаваскрипту?
Bushrut
мало ли :)
Vladimir
:)
Ярослав
Ребят, кто-то работал с микрофоном в браузерах?
Ярослав
Не отображается запрос на использование микрофона
Ярослав
Не могу понять в чём проблема может быть
Ярослав
Локально всё работает
Dmitry
API для микрофона и камеры работает только на локалхосте и на сайтах по https
Michael
Ладно, спасибо. Будем думать над другим удобным способом перенпаравления.
window.open надо дёргать в обработчике события, инициированного пользователем, например клика
Michael
Иначе браузеры режут это
Archakov
Gulp || Grunt || Webpack? На одном из собеседований, мне засчитали минус из-за того, что я пользуюсь галпом. Вот, что-то уже не пойму, что тогда юзать.
Sergei
Триггер не покатит, надо чтобы был реальный клик мышкой
window.open срабатывает, но появляется сообщение о блокировке всплывающих окон. Решили просто добавить кнопку в блок с сообщением, чтобы юзер сам переходил)
Anonymous
> засчитали минус, человек что-то знает
Anonymous
👍
Sergei
Если дёргать оупен в обработчике клика, то блокироваться не будет
Хм, интересно. Нужно будет попробовать. Спасибо)
Ярослав
новый ангуляр два раза в год!
Ярослав
Только выпустив Angular 2, Google анонсировала скорый релиз Angular 3 https://tproger.ru/news/angular-3-is-around-the-corner/
Ярослав
Это ли не счастье - раз в полгода учить фреймворк заново))
Andrey
трендами 2016 были виртуал дом и функциональщина, что они туда засунут интересно
Anonymous
что и всегда
Oleg
В этой группе нельзя вакансии постить.
Bushrut
сори, не вкурсе был
Serg
мастерство заголовка
Serg
и чтение его
Anonymous
здесь в группе есть четкий критерий вливаемой информации?
Anonymous
в рамках жс