@react_js
React — русскоговорящее сообщество

Обсуждаем React.js и экосистему. См. также: @reactnative_ru, @apollo_ru, @protonnative_ru, @nodejs_ru, @js_ru, @uiux_ru Вакансии и поиск работы: @javascript_jobs Правила: http://bit.ly/our_etiquette Sponsored with ❤️ by www.axept.co

5822 members

Архив канала @react_js 17 апреля 2016 г.

07:40:21 ДП
User 4627228
Use React Native :)
07:40:31 ДП
07:41:02 ДП
User 4627228
Вчера был доклад про тестирование React
07:41:27 ДП
User 4627228
Скоро опубликуют слайды
07:42:24 ДП
User 4627228
Вот пока про State Management https://twitter.com/mweststrate/status/721424531995377664
twitter.com/mweststrate/status/721424531995377664
Slides and demos from my #mobxjs #reactamsterdam talk today: https://t.co/1eMBsQVkT4 https://t.co/wP10ilMaAr https://t.co/zuH0LNyRCn
07:43:39 ДП
User 4627228
А, ок - вот и про тестирование слайды https://twitter.com/jack_franklin/status/721348956052144129
twitter.com/jack_franklin/status/721348956052144129
Slides from #reactamsterdam: Testing React Applications https://t.co/iDULgd3UCi
10:27:24 ДП
User 20888913
Видосов не будет, да?
10:28:07 ДП
User 20888913
Кстати, у кого проблемы с английским, вот святой парень пишет книжки на гитбуксе, поставьте ему звездочку что ли
10:28:07 ДП
User 20888913
https://www.gitbook.com/@maxfarseer
10:28:27 ДП
User 20888913
у него по роутингу, по редаксу и по реакту книжки
10:28:34 ДП
11:39:11 ДП
User 162236709
User 20888913
у него по роутингу, по редаксу и по реакту книжки
это переводы или оригинальный контент?
11:55:19 ДП
User 53635741
парни у всех компоненты также вырви глаз называются? CampaignFormTargetingContentContainer
11:55:28 ДП
11:55:45 ДП
User 3412850
Looks like Java
11:55:55 ДП
User 1245357
User 53635741
парни у всех компоненты также вырви глаз называются? CampaignFormTargetingContentContainer
ну вообще нет :)
11:55:59 ДП
User 53635741
вроде того, что имена у них желатльны уникальны
11:56:36 ДП
User 53635741
мопед не мой, если это миф, то мы разберемся :)
11:57:02 ДП
User 1245357
User 53635741
вроде того, что имена у них желатльны уникальны
кто мешает разделить по директориям? например:
layout -> Header, Footer, Main
session -> Login, Logout
etc
11:57:55 ДП
User 53635741
да, это понятно. Просто это же глобальный скоуп, я где-то слышал, что имена компонентов должны быть уникальны, фейсбук рекомендует
11:57:57 ДП
User 53635741
вранье?
11:58:38 ДП
User 1245357
Все зависит от того как ты их импортишь, но при этом … на этапе импорта ты можешь переименовать их
11:59:53 ДП
User 1245357
import {foo1, foo: foo2 } from ‘bla’
12:00:54 ПП
User 1340580
User 1245357
import {foo1, foo: foo2 } from ‘bla’
О, кстати, видел в гайде одном что деструктивное объявление работает медленне чем import foo1 from 'bla/lib/foo1'. Есть что сказать?
12:01:09 ПП
User 1245357
User 1340580
О, кстати, видел в гайде одном что деструктивное объявление работает медленне чем import foo1 from 'bla/lib/foo1'. Есть что сказать?
неа :)
12:01:22 ПП
User 1245357
не слышал об этом в смысле
12:01:32 ПП
User 1340580
User 1245357
не слышал об этом в смысле
http://www.material-ui.com/#/get-started/usage
12:01:49 ПП
User 1340580
Ну, точнее, процесс сборки работает медленнее.
12:02:00 ПП
User 1245357
Но я обычно там переменные достаю const { bal } = data;
А модули как обычно
12:02:44 ПП
User 1340580
User 1245357
Но я обычно там переменные достаю const { bal } = data;
А модули как обычно
Я почти так, но вот почему то у всех вижу import React, { Component } from 'react'.
12:02:46 ПП
User 1245357
User 1340580
http://www.material-ui.com/#/get-started/usage
да, я так и делаю
12:02:58 ПП
User 1245357
User 1340580
Я почти так, но вот почему то у всех вижу import React, { Component } from 'react'.
кстати, а
12:03:00 ПП
12:03:01 ПП
12:03:08 ПП
User 1340580
Откуда мода пошла? :)
12:03:41 ПП
User 1245357
если я не ошибаюсь, то я в каких-то исходниках это увидел :)
12:03:54 ПП
User 1340580
ОНО ВЕЗДЕ
12:04:14 ПП
User 1340580
Мне кажется просто некий стайлгайд который пошел от фейсбуков.
12:05:18 ПП
User 160533651
Кто-нибудь знает где голангисты тусуются?
12:05:47 ПП
User 162236709
скинул в лс
12:06:14 ПП
User 1340580
User 160533651
Кто-нибудь знает где голангисты тусуются?
golangrussian в slack'е.
12:06:29 ПП
User 1245357
в tg есть чатик вроде
12:06:33 ПП
User 1245357
сейчас найду
12:06:34 ПП
12:06:37 ПП
User 162236709
ладно, кину сюда
12:06:39 ПП
12:06:40 ПП
12:06:43 ПП
User 1245357
точно!
12:07:00 ПП
User 1245357
они запускают новый lifenews :)
12:09:03 ПП
User 57648988
User 1340580
Я почти так, но вот почему то у всех вижу import React, { Component } from 'react'.
В FB не любят деструктивные импорты. Причина: грепать/заменять сложнее. Явное React.Component практичнее неявного Component.

По этой же причине компоненты лучше называть уникально: проще грепнуть при рефакторинге.
12:09:46 ПП
User 1340580
User 57648988
В FB не любят деструктивные импорты. Причина: грепать/заменять сложнее. Явное React.Component практичнее неявного Component.

По этой же причине компоненты лучше называть уникально: проще грепнуть при рефакторинге.
Спасибо!
12:10:06 ПП
User 1245357
Да … все оказалось проще :)
12:10:59 ПП
User 1340580
User 57648988
В FB не любят деструктивные импорты. Причина: грепать/заменять сложнее. Явное React.Component практичнее неявного Component.

По этой же причине компоненты лучше называть уникально: проще грепнуть при рефакторинге.
Но все равно хочется же писать именно так потому что работаем обычно с локальной областью видимости.
12:12:44 ПП
User 1245357
User 1340580
Но все равно хочется же писать именно так потому что работаем обычно с локальной областью видимости.
ну у тебя же не овер 60к компонентов, как в fb ;)
12:13:05 ПП
User 1340580
User 1245357
ну у тебя же не овер 60к компонентов, как в fb ;)
Так то да.
12:39:43 ПП
User 4627228
Денис, кинь пруф, где они об этом писали)
12:40:07 ПП
User 4627228
Мы используем Component
12:40:21 ПП
User 4627228
Вместо React.Component
12:40:59 ПП
User 1245357
алсо, в FB вообще юзают React.createClass
12:41:05 ПП
User 4627228
Меньше когнитивной нагрузки - разве не ради этого был переход от ES5 к ES6?
12:42:07 ПП
User 4627228
User 1245357
алсо, в FB вообще юзают React.createClass
Понабрали себе команду по объявлениям в газете :)
12:42:42 ПП
12:43:06 ПП
User 1340580
User 4627228
Понабрали себе команду по объявлениям в газете :)
01:20:11 ПП
User 57648988
User 4627228
Денис, кинь пруф, где они об этом писали)
Где-то в issues. Речь даже была не про Component, а про import { render } from 'react-dom' vs ReactDOM.render — что если такими destructuring импортами всё усеять, то простые инструменты вроде грепа перестанут помогать разработчикам.
02:35:03 ПП
User 109470339
Привет всем! Поскажите, почему здесь не работает метод splice(): http://codepen.io/azat-io/pen/Vaxyjv
codepen.io/azat-io/pen/Vaxyjv
Forked from [Azat S.](http://codepen.io/azat-io/)'s Pen [React catergories](http://codepen.io/azat-io/pen/ZWrvKz/)....
02:41:45 ПП
User 57648988
User 109470339
Привет всем! Поскажите, почему здесь не работает метод splice(): http://codepen.io/azat-io/pen/Vaxyjv
codepen.io/azat-io/pen/Vaxyjv
Forked from [Azat S.](http://codepen.io/azat-io/)'s Pen [React catergories](http://codepen.io/azat-io/pen/ZWrvKz/)....
this.props мутировать (изменять) нельзя. И setState не стоит вызывать без параметров — вот как раз с помощью него и должно происходить удаление https://facebook.github.io/react/docs/component-api.html#setstate
02:42:52 ПП
User 109470339
Хорошо, поковыряюсь
02:47:57 ПП
User 23384802
Ребят, как там жизнь без редакса? С последнего проекта так устали описывать множество кода на добавление, редактирование, удаление, что смотрим в другие стороны. Кто чем заменяет редакс или какими тулзами упрощаете это все действие?
Под тулзами я имею ввиду что-то типа https://github.com/calvinfroedge/redux-modifiers
github.com/calvinfroedge/redux-modifiers
redux-modifiers - A collection of generic functions for writing redux reducers to operate on various data structures
03:04:37 ПП
User 1245357
User 23384802
Ребят, как там жизнь без редакса? С последнего проекта так устали описывать множество кода на добавление, редактирование, удаление, что смотрим в другие стороны. Кто чем заменяет редакс или какими тулзами упрощаете это все действие?
Под тулзами я имею ввиду что-то типа https://github.com/calvinfroedge/redux-modifiers
github.com/calvinfroedge/redux-modifiers
redux-modifiers - A collection of generic functions for writing redux reducers to operate on various data structures
хочу попробовать сагу (redux-saga)
03:07:24 ПП
User 23384802
С ним меньше кода выходит? Надо потрогать.
Просто читаю про ангуляр 2 (имел много опыта с первым), выглядит неплохо. Но осознаю, что самое слабое место реакта это именно redux. Если убрать эту писанину киллометра кода, то будет также хорошо как в ng2
03:08:58 ПП
User 1245357
User 23384802
С ним меньше кода выходит? Надо потрогать.
Просто читаю про ангуляр 2 (имел много опыта с первым), выглядит неплохо. Но осознаю, что самое слабое место реакта это именно redux. Если убрать эту писанину киллометра кода, то будет также хорошо как в ng2
https://github.com/yelouafi/redux-saga зацени
github.com/redux-saga/redux-saga
An alternative side effect model for Redux apps. Contribute to redux-saga/redux-saga development by creating an account on GitHub.
03:12:56 ПП
User 57648988
User 23384802
С ним меньше кода выходит? Надо потрогать.
Просто читаю про ангуляр 2 (имел много опыта с первым), выглядит неплохо. Но осознаю, что самое слабое место реакта это именно redux. Если убрать эту писанину киллометра кода, то будет также хорошо как в ng2
У меня один сложный апп на vanilla react, с valuelink/курсорами, полёт нормальный.

А redux-saga концептуально не сильно далеко ушёл от redux-thunk, хотя конечно приятен. Плюс redux-saga не в удобном CRUD, а в повышении качества асинхронного кода — так что @anorudes, боюсь тебе он в твоей ситуации не поможет 🙂
03:13:40 ПП
User 23384802
Спасибо, все равно надо посмотреть, не отставать за развитием )
03:14:02 ПП
User 57648988
User 23384802
Ребят, как там жизнь без редакса? С последнего проекта так устали описывать множество кода на добавление, редактирование, удаление, что смотрим в другие стороны. Кто чем заменяет редакс или какими тулзами упрощаете это все действие?
Под тулзами я имею ввиду что-то типа https://github.com/calvinfroedge/redux-modifiers
github.com/calvinfroedge/redux-modifiers
redux-modifiers - A collection of generic functions for writing redux reducers to operate on various data structures
redux-modifiers выглядит как шаг в правильное направление. Высокоуровневая абстракция, чтобы не повторять по 10 раз одно и то же.
03:26:20 ПП
User 1340580
User 109470339
Привет всем! Поскажите, почему здесь не работает метод splice(): http://codepen.io/azat-io/pen/Vaxyjv
codepen.io/azat-io/pen/Vaxyjv
Forked from [Azat S.](http://codepen.io/azat-io/)'s Pen [React catergories](http://codepen.io/azat-io/pen/ZWrvKz/)....
Еще актуально?
03:27:06 ПП
User 1245357
@anorudes @lendarel кстати, еще видел https://github.com/sskyy/redux-task … Но не пробовал :)
github.com/sskyy/redux-task
redux-task - A simple Side Effects manager for redux.
03:39:43 ПП
User 23384802
@r3nya Спасибо, интересное решение. Может кто еще что напишет) 
03:40:31 ПП
User 1245357
@anorudes если будешь пробовать – напиши фидбек какой-нибудь что ли :)
03:41:08 ПП
User 1340580
User 109470339
Привет всем! Поскажите, почему здесь не работает метод splice(): http://codepen.io/azat-io/pen/Vaxyjv
codepen.io/azat-io/pen/Vaxyjv
Forked from [Azat S.](http://codepen.io/azat-io/)'s Pen [React catergories](http://codepen.io/azat-io/pen/ZWrvKz/)....
http://codepen.io/immuzov/pen/dMedPW?editors=0011
codepen.io/immuzov/pen/dMedPW?editors=0011
Forked from [Azat S.](http://codepen.io/azat-io/)'s Pen [React catergories](http://codepen.io/azat-io/pen/ZWrvKz/). Forked from [Azat S.](http://cod...
04:00:10 ПП
User 162236709
{this.props.website ? <a href="https://{this.props.website}"><li>Website</li></a> : null}

как сделать чтоб в href вставлялась ссылка?
04:00:46 ПП
User 1340580
href={'https://' + this.props.website}
04:01:12 ПП
04:01:23 ПП
User 162236709
оно просто пихает this.props.website в html текстом
04:01:43 ПП
User 162236709
и так, и в первом случае
04:02:09 ПП
04:02:27 ПП
User 1340580
Кинь код полностью.
04:02:47 ПП
04:03:01 ПП
User 1340580
Ты кавычки удалил?
04:03:14 ПП
User 162236709
какие?
04:03:16 ПП
User 1340580
Мне кажется ты меня обманываешь.
04:03:22 ПП
User 162236709
возле https не трогал
04:04:15 ПП
User 1340580
href={'https://' + this.props.website} попробуй этот вариант, он работает.
04:04:39 ПП
User 162236709
но ты уже такой предлагал
04:04:56 ПП
User 1340580
Ты не обрамляешь href в " ?
04:05:02 ПП
04:05:35 ПП
04:05:54 ПП
User 1340580
website ? (<a ...
04:06:49 ПП
User 1340580
В скобки обрами то что ты в тернарном операторе делаешь в первом значении.
04:07:18 ПП
User 162236709
no luck)))
04:07:30 ПП
User 1340580
User 162236709
no luck)))
?
04:07:35 ПП
User 162236709
не работает
04:07:47 ПП
User 1340580
Да как так))
04:09:57 ПП
User 1340580
Может у тебя не сбилдилось?
04:11:31 ПП
User 23384802
может лайврелоад отвалился. Нажми ctrl + r
И тут тоже надо юзать ${test}
04:11:43 ПП
User 23384802
и ссылка должна быть внутри <li>, а не <ul>
04:12:37 ПП
User 1340580
ох лол :D
04:12:49 ПП
User 1340580
Я думаю это прост для тестов пока так стоит.
04:13:23 ПП
User 23384802
variable ? <a href=></a> : null - нет смысла так писать
04:13:29 ПП
User 23384802
можно писать просто variable && <a href=></a>
04:14:02 ПП
User 1340580
@anorudes  О, кстати, вопросик можно?
04:14:15 ПП
User 23384802
ага, а какой?
04:14:55 ПП
User 1340580
User 23384802
ага, а какой?
<someComponent onClick={this.someFunc.bind(this, someArg)}>
04:15:31 ПП
User 1340580
Можно ли как-то избавиться от биндинга в рендере при условии что нужен аргумент в функцию передать?
04:15:54 ПП
User 23384802
передать переменную в функцию?
04:16:45 ПП
User 1340580
User 23384802
передать переменную в функцию?
Я хочу биндить контекст в конструторе, а в рендере ссылку на функцию, this.someFunc. Пока вижу только вариант с замыканием, но это стремно.
04:16:52 ПП
User 162236709
User 1340580
Может у тебя не сбилдилось?
перезагрузил вебпак, перезагрузил в браузере, все норм с этим
04:17:08 ПП
User 1340580
User 162236709
перезагрузил вебпак, перезагрузил в браузере, все норм с этим
Идеи кончились, вариант с конкатенацией строк прекрасно работает.
04:17:19 ПП
User 1340580
Проблема в другом.
04:17:27 ПП
User 23384802
ну смотри, биндить можно в конструкторе. Например
constructor(props) {
   super(props);
   this.onChangeFile = this.onChangeFile.bind(this);
  }

Можно делать автобинд прямо в классе
handleClick = (event, variable) => {   

}

можно прямо в jsx <a href="" onClick={this.handleClick.bind(this, test)}
04:17:35 ПП
User 23384802
я импользую автобинд
04:17:57 ПП
User 162236709
я кстати до того, как вы написали и до того как я афкнулся сделал вот так: 

{(() => {
  if (this.props.website) {
    return <a href={this.props.website}><li>Website</li></a>
  }
})()}

и все равно ничего)))
04:18:24 ПП
User 23384802
пример с автобиндом
04:18:24 ПП
User 23384802
handleClick = (id) => {   

}
04:18:33 ПП
User 23384802
<span onClick={event => this.handleClick(2)}>test</span>
04:19:10 ПП
User 23384802
если нужен евент
04:19:10 ПП
User 23384802
то так
04:19:12 ПП
User 23384802
handleClick = (event, id) => {   

}

<span onClick={event => this.handleClick(event, 2)}>test</span>
04:19:15 ПП
User 1340580
User 23384802
<span onClick={event => this.handleClick(2)}>test</span>
Вот это вроде как плохо, арроу функции каждый раз создаются.
04:19:31 ПП
User 23384802
быстро ты скопировал )
04:20:08 ПП
User 23384802
ну, на самом деле евент редко где требуется
04:20:12 ПП
User 1340580
Потерял нить мысли.
04:20:18 ПП
04:20:19 ПП
User 23384802
а значение дак вообще можно передать дата атррибутами. Кто-то считает это норм
04:20:20 ПП
User 23384802
но не я)
04:20:49 ПП
User 23384802
можешь в скайпе добавить "void-anoru"
04:21:22 ПП
User 1340580
User 23384802
можешь в скайпе добавить "void-anoru"
done.
04:22:38 ПП
User 20888913
Кто хочет понять, чем реакт плох, вот great talk by the way
04:22:40 ПП
User 20888913
https://www.youtube.com/watch?v=NgwQHGqIMbw&feature=youtu.be
youtube.com/watch?v=NgwQHGqIMbw&feature=youtu.be
Front-end architecture has evolved greatly since the era of jQuery's dominance. React popularized the Virtual DOM rendering model, Flux did the same with uni...
04:24:24 ПП
User 162236709
пофиксил
04:53:34 ПП
User 182495393
User 23384802
ну смотри, биндить можно в конструкторе. Например
constructor(props) {
   super(props);
   this.onChangeFile = this.onChangeFile.bind(this);
  }

Можно делать автобинд прямо в классе
handleClick = (event, variable) => {   

}

можно прямо в jsx <a href="" onClick={this.handleClick.bind(this, test)}
кстати по стайл гайду Airbnb они советуют хэндлеры вещать в коснстракторе а не в render: https://github.com/airbnb/javascript/tree/master/react
github.com/airbnb/javascript/tree/master/react
JavaScript Style Guide. Contribute to airbnb/javascript development by creating an account on GitHub.
05:00:00 ПП
User 182495393
Скажите, а кто нибудь сталкивайся с задачей синхронизировать клиетскую и серверную сторону при первом рендере, вот краткое описание: изоморфное приложение, первый реквест всегда отрисовываеться на серверной стороне, при этом после загрузки приложение на клиенте тот же самый код будет по новой отображать уже отрисованную страницу, задача загрузить все Stores датой с сервера и поставить что какой флаг что то вроде initialedByServer, может кто знает о готовых решениях или принятых практиках для данной задачи?
05:08:01 ПП
User 21727291
User 20888913
https://www.youtube.com/watch?v=NgwQHGqIMbw&feature=youtu.be
youtube.com/watch?v=NgwQHGqIMbw&feature=youtu.be
Front-end architecture has evolved greatly since the era of jQuery's dominance. React popularized the Virtual DOM rendering model, Flux did the same with uni...
Спасибо, хорошо мужик объясняет )    Для меня совсем не важно иметь возможность пошагово откатить UI на любой предыдущий шаг, в т.ч. чужого  reusable компонента. А вот учить новый язык не всегда есть время.
05:08:12 ПП
User 215373
Мне кажется, стоит обыграть componentDidMount
05:08:38 ПП
User 215373
это событие никогда не сработает при черверном рендеринге (в виду отстуствия window и document)
05:09:16 ПП
User 215373
Если выразился неточно, просьба поправить; у меня немного опыта серверного рендера
05:10:12 ПП
User 182495393
User 215373
Мне кажется, стоит обыграть componentDidMount
отменить рендеринг на сервере ни как нельзя, нам SEO важен
05:10:21 ПП
User 215373
а я и не предлагаю)
05:10:34 ПП
User 215373
я говорю о том, что компонент рендерится сервером
05:10:55 ПП
User 215373
а в бразуере синициировать componentDidMout
05:11:03 ПП
User 215373
*componentDidMount
05:11:32 ПП
User 215373
или еще проще
05:11:41 ПП
User 215373
рендерите страницу на сервере
05:11:53 ПП
User 215373
а после отдачи меняете стейт корневого компонента
05:12:18 ПП
User 215373
что приведет к ре-рендерингу
05:12:26 ПП
User 215373
если я правильно понял вашу задачу
05:14:32 ПП
User 182495393
так ре рендеринг так и так произойдет на клиентской части, задача именно в том что бы отменить первый рендеринг и использовать полученную дату с сервера
05:15:43 ПП
User 215373
componentWillUpdate ?
05:16:25 ПП
User 215373
shouldComponentUpdate: function(nextProps, nextState) {
  return nextProps.id !== this.props.id;
}
05:16:33 ПП
User 215373
вернее этот метод
05:18:33 ПП
User 182495393
не совсем, у меня весь fetch data прописан в router, вот тут описал пример: https://stackoverflow.com/questions/25983001/strategies-for-server-side-rendering-of-asynchronously-initialized-react-js-comp/35964135#35964135
stackoverflow.com/questions/25983001/strategies-for-server-side-rendering-of-asynchronously-initialized-react-js-comp/35964135
One of the biggest advantages of React.js is supposed to be server-side rendering. The problem is that the key function React.renderComponentToString() is synchronous which makes it impossible to l...
05:20:23 ПП
User 4627228
Посмотри пример давний, но рабочий в redux-catch-promise
05:21:00 ПП
User 4627228
Мы правда уже переехали в проектах на роутер
05:22:00 ПП
User 182495393
гляну
05:22:06 ПП
User 182495393
react-router?
05:23:44 ПП
05:24:13 ПП
User 4627228
Пусть хилый, но стандарт :)
05:24:21 ПП
06:26:26 ПП
User 89478045
Коллеги, у кого есть кейсы, где тестируются «умные» компоненты?
06:27:33 ПП
User 1682650
у нас тестируются
06:28:26 ПП
User 1682650
в принципе ничем не отличается от тестирования "не умных", надо просто воссоздавать нужную часть стейта для них
06:33:08 ПП
User 89478045
User 1682650
в принципе ничем не отличается от тестирования "не умных", надо просто воссоздавать нужную часть стейта для них
А что косается роутинга?
06:33:22 ПП
User 89478045
касается*
06:34:41 ПП
User 1682650
всмысле касается?
06:35:31 ПП
User 89478045
@trashgenerator Ну если компонент использует роутинг, то поднимаете и роутер?
06:36:22 ПП
User 89478045
А есть кто проекты e2e тестами покрывает? Что используете?
06:47:27 ПП
User 25721027
Подскажите, как-то решается проблема css-modules для псевдоэлементов и :hover ?
06:56:59 ПП
User 1340580
User 25721027
Подскажите, как-то решается проблема css-modules для псевдоэлементов и :hover ?
radium.com
07:06:41 ПП
User 1682650
User 89478045
@trashgenerator Ну если компонент использует роутинг, то поднимаете и роутер?
я стараюсь мокать все что вызывает компонент внутри себя. в том числе другие компоненты, pushState роутинга
07:29:19 ПП
User 57648988
User 25721027
Подскажите, как-то решается проблема css-modules для псевдоэлементов и :hover ?
а для :hover — просто через onMouseEnter
ещё один плюс onMouseEnter: проще тестировать/разрабатывать компоненту
08:14:28 ПП
User 4627228
Алексей 250-й член. Ура, поздравляем 🎉👏
08:18:02 ПП
User 4627228
User 57648988
а для :hover — просто через onMouseEnter
ещё один плюс onMouseEnter: проще тестировать/разрабатывать компоненту
OnMouseEnter не работает с disabled JS ;)
08:37:55 ПП
User 1340580
User 4627228
OnMouseEnter не работает с disabled JS ;)
Шел 2016ый год :DDD
08:38:48 ПП
User 162236709
User 4627228
OnMouseEnter не работает с disabled JS ;)
для людей без js намного логичнее показывать окошко, чем подстраиваться под них
08:40:06 ПП
User 162236709
либо упрощенная отдельная версия, но это если за нее тебе платят
08:42:29 ПП
User 4627228
Узнаю слова российских программистов :)
08:45:27 ПП
User 162236709
User 4627228
Узнаю слова российских программистов :)
сможешь это аргументировать?
08:48:54 ПП
User 162236709
я понимаю, что в РФ хуевый менталитет
но ты как бы не прав
и дело не в том, что я никогда не был в РФ
нет никакого смысла подстраиваться под пользователей без javascript:
он включен во всех современных браузерах, под links никто не сидит
такие браузеры как IE6-8 почти не встретить, только в каком-нибудь тырпрайзном офисе РФ, а ты против кого? правильно.
пользователи, которые самостоятельно отключают js в основном религиозные линуксоиды, очень яро волнующиеся за свою безопасность
поддерживать их не стоит, они в основном нелогичны и агрессивны, общался с такими
08:49:12 ПП
User 162236709
ну а еще как я вижу, тебе очень нравится публично выставлять свое нахождение в NL
и быть русофобом
08:50:10 ПП
User 4627228
Требования наших западных заказчиков (продуктовые решения):
+ IE8 (8% рынка)
+ disabled JS
08:50:11 ПП
08:51:32 ПП
User 162236709
User 4627228
Требования наших западных заказчиков (продуктовые решения):
+ IE8 (8% рынка)
+ disabled JS
о чем мне говорят конкретные требования конкретного заказчика? учитывая то, что мы не говорим про обязательность выполнения, а про наличие возможности самому решить
08:53:13 ПП
User 4627228
Помимо высоко защищенных структур, в Европе высоко ценится privacy, особенно в Германии и определенных сегментах - отключённый JS там достаточно частая ситуация для защиты от трекинга. Там даже есть закон об уведомлении, если используются Cookies:
https://www.cookielaw.org/your-cookie-law-rights/
cookielaw.org/your-cookie-law-rights
New laws have been put in place across the EU to help protect your privacy while online. All websites owned by companies based in the EU should be complying with this law, and if they aren't you can complain about it either to the site owners or to legal authorities that can require websites to comply or face heavy fines.
08:53:15 ПП
User 162236709
User 162236709
либо упрощенная отдельная версия, но это если за нее тебе платят
вот подтверждает это, кстати
09:02:54 ПП
User 4627228
Если ресурсы позволяют вести и сопровождать две почти независимые версии (поддержка IE8 и disabled JS увеличивает стоимость проекта лишь на 20%), то можно отдельной lite-версией. Но не для всех продуктов это приемлимо + риск потери reusability, когда такое требование появится.