Size: a a a

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

2020 December 27

AC

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

AC

Anton Chikin in Clojure — русскоговорящее сообщество
useState(“mystate”, null) итд
источник

AL

Arseniy Lebedev in Clojure — русскоговорящее сообщество
Anton Chikin
useState(“mystate”, null) итд
Вы можете совершенно запросто реализовать такой хук
источник

AL

Arseniy Lebedev in Clojure — русскоговорящее сообщество
Но не наоборот
источник

AC

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

AL

Arseniy Lebedev in Clojure — русскоговорящее сообщество
Я таких хуков для localStorage, chromeSyncStorage и прочих штук довольно много сделал
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Arseniy Lebedev
Я таких хуков для localStorage, chromeSyncStorage и прочих штук довольно много сделал
Видимо не совсем понятно
источник

AL

Arseniy Lebedev in Clojure — русскоговорящее сообщество
Но нельзя сделать наоборот, когда значение стейта анонимно и используется только в скоупе текущей функции
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Засчет ключа можно избавиться от порядка вызова useState
источник

AL

Arseniy Lebedev in Clojure — русскоговорящее сообщество
Это голословное утверждение
источник

AL

Arseniy Lebedev in Clojure — русскоговорящее сообщество
Дайте мне имплементацию
источник

AL

Arseniy Lebedev in Clojure — русскоговорящее сообщество
Я её потестирую
источник

AL

Arseniy Lebedev in Clojure — русскоговорящее сообщество
Известными юзкейсами
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Arseniy Lebedev
У меня есть ощущение что вы не понимаете что функциональный компонент объявляется как самая настоящая функция. У него нет никаких макросов, маркеров что он компонент и так далее. Это функция. И композиционные хуки это тоже обычная функция которая использует внутри дефолтные хуки. Я бы очень хотел посмотреть на то, как вы сможете реализовать систему которая позволяет писать вот так без реализации хуков в виде линкед листа c initialState и прочими причиндалами
const useNewHook = (url) => {
 const [data, setData] = useState(null)
 useEffect(() => {
    fetch(url).then(({ data }) => setData(data))
 }, [url, setData])
 return data
}
Ну какая же это просто функция если выше хорошо показали что она может работать только в двух замыканиях
источник

AL

Arseniy Lebedev in Clojure — русскоговорящее сообщество
Anton Chikin
Ну какая же это просто функция если выше хорошо показали что она может работать только в двух замыканиях
А она от этого перестаёт быть просто функцией?
источник

AC

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

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Arseniy Lebedev
А она от этого перестаёт быть просто функцией?
Вне контекста этих замыканий она не будет работать корректно
источник

AC

Anton Chikin in Clojure — русскоговорящее сообщество
Так что да - это не просто функция
источник

AL

Arseniy Lebedev in Clojure — русскоговорящее сообщество
Anton Chikin
Так что да - это не просто функция
Она объявляется как функция
источник

AC

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