Igor
Igor
точный формат объекта не помню, так же есть пропс defaultValue
Alexander
Не могу законектить редакс к реакту,
Оба по одельности работают, а вот connect не отрабатывает
Запускать пробую в сторибуке.
Стор внешний по отношению к реакту.
Реакт в объектном стиле.
События в стор идут.
Доходят ли они до реакта не понятно.
Ошибок никто не сыпет, просто тихо не работает
Alexander
Можно ли обойтись без реакт-редакс и связать руками?
Или увидеть ошибку коннектора в явном виде?
Archakov
При написании тестов для redux (actions, reducers), вы создаете отдельную папку tests, куда помещаете файлы типа usersActions.test.js и т.п.? Или рядом с каждым actions/reducer лежит filename.test.js ?
Alexander
Пока все набросано в одном файле без тестов. Как писать тесты понятно, но сейчас не в них дело. А надо понять где ошибка. Возможно с иммутабильностью чтото связано.
Alexander
Законектил вывод текстовых сообщений. Часть из них теряется и не доходит до реакта или по крайней мере не показываются
Ivan
Егор
Ivan
всё, дошло. спасибо
https://create-react-app.dev/docs/advanced-configuration
GENERATE_SOURCEMAP
Alexander
Как конектор определяет что надо обновить реакт?
Alexander
его можно увидеть из реакта?
Alexander
могу, но код страшный. Прошу тапками не кидаться 😊
Anonymous
Всем привет. А можно попросить ревью моего первого проекта от знатоков? https://github.com/alistkov/bored_app
Zak
Ребята, кто-нибудь в курсе есть какая нибудь подобная либа на Реакт? React color не подходит
Roman
Anonymous
Ребят, кто нибудь, помогите пожалуйста, в лс
Ula
Вопрос по хукам
в соседнем чате спорят что лучше
const handleOnChange = (evt) => {
const field = evt.target.dataset.field
const value = evt.target.value
setState(state => ({...state, [field]: value}) - один стейт как объект и одна функция для его изменения или разные функции для разных значений стейта?
Речь идет о формах с несколькими полями. Я только начал изучать хуки и не пойму как правильно
Ula
Хочу переписать это на хуки
Ula
Igor
можно закладываться не на дата атрибут а на name атрибут, ты это не учел от меня
Ula
Dmitry
Посоны react dnd не работает на телефонах?
Dmitry
https://github.com/Neilos/react-dnd-html5-with-touch-backend
Нашёл такое. Юзал кто?
Andrey
Ula
Daniil
для работы с инпутами желателен useCallback
Ula
а на что менять this.props.actionName() в сабмите, например, если использовать хуки?
Daniil
чтобы посмотреть зачем useCallback/useMemo не нужен рабочий проект.
Ula
Daniil
пропс это грубо говоря аргумент, у тебя функция, твой пропс для нее и есть аргумент, ты можешь его деструктуризировать до const ReactComponent = ({ actionName )} => ( ... )
Ula
Daniil
они для разаных целей, сейчас у тебя на каждый рендер будет плодиться функция которая занимает ячейку памяти
Ula
Ula
Вопрос по хукам
в соседнем чате спорят что лучше
const handleOnChange = (evt) => {
const field = evt.target.dataset.field
const value = evt.target.value
setState(state => ({...state, [field]: value}) - один стейт как объект и одна функция для его изменения или разные функции для разных значений стейта?
Речь идет о формах с несколькими полями. Я только начал изучать хуки и не пойму как правильно
Daniil
Как тебе угодно, хуки не диктуют, чтобы ты делал только так, они тебе предлагают свое апи и свой вариант решения.
P
Подскажите, стоит ли подключать в проект redux-forms? Какие минусы у этой либы? Проект - админка для блога
Ula
Daniil
https://ru.reactjs.org/docs/hooks-faq.html почитай faq, я думаю ты найдешь ответы на некоторые свои вопросы
Ula
Daniil
Нет. юзМемо ты точно не правильно используешь. Все эти useMemo/useCallback для мемоизации вычислений, чтобы улучшить перфоманс, но всегда их использовать не нужно, из-за этого они в разделе доп по апи хукам.
Daniil
конкретно в твоем случае useCallback может пригодится для вычислений нового стейта при onChange.
Daniil
Если тебе доки мало, то погугли просто про использование хуков, я думаю статьей достаточно на том же медиуме
Bogdan
Alexiagray
привет всем
реально ли с помощью react native собрать ipa файл на винде?
или обязательно нужно xcode ?
Alexiagray
просто для онлайн тестов юзал раньше мак а на телефоне экспо
но я не помню компилился он через xcode изначально или нет
эмулятор не нужен нужно просто получить либо ipa файл либо как в ехпо было через приложение
Daniil
Alexiagray
меня там кикнули за чето давно очень))
Alexiagray
ток щас узнал что реакт юзает rxjs
Victor
Alexiagray
под expo-cli
Alexiagray
мод под обычным его и нет)
Alexiagray
ля как на экспо привязать либу ...
Alexiagray
у меня в мануале тут только под xcode
iOS
In XCode, in the project navigator, right click Libraries → Add Files to [your project’s name]
Go to node_modules → react-native-akamaibmp → ios and add RNAkamaibmp.xcodeproj
In XCode, in the project navigator, select your project. Add libRNAkamaibmp.a to your project’s Build Phases → Link Binary With Libraries
Run your project (Cmd+R)
так лень ставить macos
Andrey
Он вернулся)
Nikita
Alexiagray
есть объект в котором есть
kernel: "(function(a){......}'
как мне вызвать из под реакта на нажатие кнопки вызов функции?
Alexiagray
eval?
Alexiagray
const fetchFN = async () => {
const response = await fetch("http://example.com/movies.json");
const myJson = await response.json();
console.log(JSON.stringify(myJson));
return myJson;
};
const Page = () => {
try {
fetchFN()
.then(scriptData => {
console.log(scriptData);
return scriptData;
})
.catch(reject => {
console.log(reject);
return reject;
});
} catch (err) {
console.log("catch: " + err);
}
};
вовзращает TypeError какого то черта
Alexiagray
в чём трабла
Denis
в чём трабла
какой из 3х consol.log у вас отрабатывает ? данные функция возвращает ? после await response.json();
Denis
если нет, то наверняка возвращаемые данные не в формате json. попробуйте прогнать ваш json, через валидатор. если json валидный - возможно дело в контент тайпе ответа сервера и тогда попробуйте
const myText = await response.text();
const myJson = JSON.parse(myText);
倫太郎
Daniil
Но тут от кейса зависит конечно
Oleg
Daniil
Daniil
Eugene
подскажите, у меня Edge не поддерживает приложение React:
We don't support this version of your browser
You are visiting this page because we detected an unsupported browser. Your browser does not support our application. We highly recommend that you update your browser.