Size: a a a

Clojure — русскоговорящее сообщество

2020 January 28

IP

Ilya Pomaskin in Clojure — русскоговорящее сообщество
А как же наработки со стороны жс-разработчиков?
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
ну вот начался переход с технических тем на личности
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
мне все равно кто тупой а кто нет
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
To solve this, Hooks let you split one component into smaller functions based on what pieces are related (such as setting up a subscription or fetching data), rather than forcing a split based on lifecycle methods. You may also opt into managing the component’s local state with a reducer to make it more predictable.
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Ну это же описание re-frame
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
In addition to making code reuse and code organization more difficult, we’ve found that classes can be a large barrier to learning React. You have to understand how this works in JavaScript, which is very different from how it works in most languages. You have to remember to bind the event handlers. Without unstable syntax proposals, the code is very verbose. People can understand props, state, and top-down data flow perfectly well but still struggle with classes. The distinction between function and class components in React and when to use each one leads to disagreements even between experienced React developers.
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
эту проблему уже решил reagent
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
To solve these problems, Hooks let you use more of React’s features without classes. Conceptually, React components have always been closer to functions. Hooks embrace functions, but without sacrificing the practical spirit of React. Hooks provide access to imperative escape hatches and don’t require you to learn complex functional or reactive programming techniques.
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
reagent
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Drawbacks
A non-exhaustive list of drawbacks of this Hooks design follows.

Introducing a new way to write components means more to learn and means confusion while both classes and functions are used.
The “Rules of Hooks”: in order to make Hooks work, React requires that Hooks are called unconditionally. Component authors may find it unintuitive that Hook calls can't be moved inside if statements, loops, and helper functions.
The “Rules of Hooks” can make some types of refactoring more difficult. For example, adding an early return to a component is no longer possible without moving all Hook calls to before that conditional.
Event handlers need to be recreated on each render in order to reference the latest copy of props and state, which reduces the effectiveness of PureComponent and React.memo.
It's possible for closures (like the ones passed to useEffect and useCallback) to capture old versions of props and state values. In particular, this happens if the “inputs” array is inadvertently missing one of captured variables. This can be confusing.
React relies on internal global state in order to determine which component is currently rendering when each Hook is called. This is “less pure” and may be unintuitive.
React.memo (as a replacement for shouldComponentUpdate) only has access to the old and new props; there's no easy way to skip rerendering for an inconsequential state update.
useState uses a tuple return value that requires typing the same name twice to declare a state field (like const [rhinoceros, setRhinoceros] = useState(null);), which may be cumbersome for long names.
useState uses the overloaded type () => T | T to support lazy initialization. But when storing a function in state (that is, when T is a function type) you must always use a lazy initializer useState(() => myFunction) because the types are indistinguishable at runtime. Similarly, the functional updater form must be used when setting state to a new function value.
источник

OR

Oleg Roshchupkin in Clojure — русскоговорящее сообщество
Anton Chikin
ну вот начался переход с технических тем на личности
Я не в первый раз разговариваю с тобой, мне не в первый раз тяжело. Я сказал то, о чём думаю и то, что моя точка зрения — это моя трактовка, я не знаю на 100%, нужны хуки или нет. Ты продолжаешь спрашивать — зачем, я тебе не отвечу.
Многие думали о том, что реакт не нужен, некоторые что-то писали, итога пока нет, поэтому вот так, будут писать хуки в реагент.
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Oleg Roshchupkin
Я не в первый раз разговариваю с тобой, мне не в первый раз тяжело. Я сказал то, о чём думаю и то, что моя точка зрения — это моя трактовка, я не знаю на 100%, нужны хуки или нет. Ты продолжаешь спрашивать — зачем, я тебе не отвечу.
Многие думали о том, что реакт не нужен, некоторые что-то писали, итога пока нет, поэтому вот так, будут писать хуки в реагент.
я пытаюсь понять суть твоей точки зрения
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Моя точка зрения - хуки в реагенте ничего не дают потому что все их свойства и цели и так уже реализованы самим реагентом.
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Твоя:
источник

OR

Oleg Roshchupkin in Clojure — русскоговорящее сообщество
Суть моей точки зрения в том, что есть декларируемые плюсы, от оптимизации кода, до упрощения логики.
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Oleg Roshchupkin
Суть моей точки зрения в том, что есть декларируемые плюсы, от оптимизации кода, до упрощения логики.
упрощения логи по сравнению с чем?
источник

OR

Oleg Roshchupkin in Clojure — русскоговорящее сообщество
Возможно в случае реагента логики не случится, я не штудировал тамошний код, я там много лазал, но не буду давать экспертных оценок.
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Так мы и говорим про случай реагента
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Ладно, посмотрим что Комптон скажет.
источник