@reactnative_ru

Страница 734 из 878
Evansir
08.07.2018
11:48:01
вызывается

componentWillReceiveProps(nextProps) { if (this.props.data.length != nextProps.data.length) this.forceUpdate() }

но это вызывает только ошибку null is not an object

да лог вызывается

Google
Vladimir
08.07.2018
11:51:11
Так не проверяйте длину, если data null

akaSybe
08.07.2018
11:52:12
Задай initialState

Vladimir
08.07.2018
11:54:16
akaSybe
08.07.2018
11:54:28
или defaultProps

Evansir
08.07.2018
11:54:28
componentWillReceiveProps(nextProps) { if (nextProps.data != null) { if (this.props.data.length != nextProps.data.length) this.forceUpdate() } }

ничего не изменило

Vladimir
08.07.2018
11:54:54
Так не в nextProps дело

Evansir
08.07.2018
11:54:59
вот редакса инитиал стейт

const initialStateTabSaved = { data: [] }

Vladimir
08.07.2018
11:55:10
У вас изначально данных нет

const initialStateTabSaved = { data: [] }
Вот это где используется?

Evansir
08.07.2018
11:55:45
export const reducersTabSaved = (state = initialStateTabSaved, action)

Vladimir
08.07.2018
11:57:48
Если у вас null, значит вы data где-то обнуляете, чудес не бывает

Google
Evansir
08.07.2018
11:58:39
Если у вас null, значит вы data где-то обнуляете, чудес не бывает
case actionTypes.RELOAD_DATA_TAB_SAVED: return {...state, data: action.payload.data} break case actionTypes.SAVE_ITEM_TAB_SAVED: return {...state, data: [...state.data, action.payload.item]} break case actionTypes.DELETE_ITEM_TAB_SAVED: return {...state, data: action.payload.data} break

это все что в редюсере

кроме дефаул

Единственное что меня смущает

[TypeError: Object is null or undefined] line: 1090, column: 59,

появляется при первом сохранении

после перезапуска все работает как нужно

akaSybe
08.07.2018
12:07:04
так может воткнешь редакс логгер и посмотришь какой стейт после какждого действия?

Evansir
08.07.2018
12:07:10
но ссылается оно, для меня, не понятно на что



как то так

проблема в том, что данный редюсер не инициализирует данные своего стейта

по какой-то причине

если сохранить - удалить - сохранить

стейт инициализируется и все начинает работать как нужно

может кто прочитает и подскажет, кину код самого создания стора ?

const rootReducer = combineReducers({ reducersExploreTab, reducersMainContainer, reducersTabSaved, }) export function configureStore() { const store = createStore(rootReducer, applyMiddleware(thunk, logger)) return store }

akaSybe
08.07.2018
12:57:47
создай репозиторий где воспроизводится ошибка

чтобы можно было склонировать

Google
akaSybe
08.07.2018
12:58:18
не обязательно всё приложение

неужен лишь минимально воспроизводимый пример

Evansir
08.07.2018
13:00:07
на гитхабе?

akaSybe
08.07.2018
13:00:20
да хоть зип

Evansir
08.07.2018
13:01:01
Хорошо, еще позанимаюсь дурней, если не выйдет тогда создам

Все нашел

Проблема была в экшене который присваивал null

Причина всех проблем - моя малая грамота в js

я думал что даже если присвоен null, то следующее значение перепишет переменную

Evansir
08.07.2018
13:38:15
Угадал)
Да, благодарю, я в этом направлении и начал рыть

Vladimir
08.07.2018
13:39:40
Рады помочь

Vadim
08.07.2018
20:09:32
Какой андроид телефон купить для тестов? Чтобы такой народный, популярный.

Vladimir
08.07.2018
20:18:05
Cильно зависит от локации и аудитории. Для большинства тестов вам хватит эмулятора. Классический телефон разработчика - pixel/nexus, чем свежее, тем лучше. Ну и самсунги S-серии, разумеется.

Но опять же, я бы не стал заморачиваться ровно до тех пор пока вам будет хватать эмулятора. Все device-specific баги вы даже с полусотней девайсов не отловите.

Vadim
08.07.2018
20:26:12
Vladimir
08.07.2018
20:28:15
ну я больше для "тактильных" ощущений. В эмуляторе сложно понять тормозит ли интерфейс.
тогда покупайте какой-нибудь максимально свежий и дешевый самсунг. С одной стороны получите свежую ось, с другой стороны не самое сильное железо, что вам и нужно.

?
08.07.2018
20:30:24
Artem
08.07.2018
20:54:55
У сяоми есть смартфоны на голом свежем андроиде
Голый свежий андроид можно потестить на эмуляторе, а если уж брать что-то народное, то сяоми на miui

Google
Artem
08.07.2018
20:56:30
Там выше написана причина покупки
Вижу, но все равно лучше убить двух зайцев сразу

И тактильно щупать, и на miui смотреть

Evansir
08.07.2018
21:01:06
А я считаю нужно брать смарт с последней прошивкой

И будущей возможностью обновления

На более новую

Особенно если проц АМД ?

На компе

Admin
ERROR: S client not available

Evansir
08.07.2018
21:03:55
Опосля ставите дуал бут и тот же miui и чистый Android для тестов

У меня одно приложение крашилось исключительно на 8 Андроиде, я бы и не узнал, если бы не решил потестить на своем телефоне основном

Sergey
08.07.2018
22:36:04
А из-за чего именно на 8м?
в Android 8 появилось достаточно много ограничений связанных с работой приложения в фоне. Неповиновение некоторым роняет приложение ? например, запуск сервисов в фоне

Michael
08.07.2018
22:54:40
народ подкиньте хороших туториалов по нэйтиву (кроме офф док)

Evansir
09.07.2018
06:09:43
А из-за чего именно на 8м?
Да, Сергей прав. Плюс там с NDK что-то намутили и getStringArray перестал работать с большим массивом

Плюс нотификации имеют каналы

И если канал не зарегать, то у меня не приходило

В общем, лучше иметь реальный девайс на последней версии, а прошлые тестить на эмуле

Demuz
09.07.2018
06:36:18
Здарова. Подскажите, есть ли сайты типа zeplin.io, но только для RN разработки. Короче говоря, на этом сайте можно под мобилы писать дизайны приложений и там сразу код снизу потом высвечивается, для Андроид например...

Google
Demuz
09.07.2018
06:36:58


Можно подключать в разработку других участников, они могут добавлять цвета и прочие изменения, дополняя всё комментариями.

Alexander
09.07.2018
06:40:08
Как сделать responsive изображение? Чтобы по ширине расстягивалось, а по высоте автоматически

?
09.07.2018
06:42:57
Alexander
09.07.2018
06:43:01
Как сделать responsive изображение? Чтобы по ширине расстягивалось, а по высоте автоматически
https://stackoverflow.com/questions/39631895/how-to-set-image-width-to-be-100-and-height-to-be-auto-in-react-native

Serj
09.07.2018
06:43:02
Нужно ручками прописать необходимую высоту

Как в вебе не пойдет

Типа видз 300, height: auto

Demuz
09.07.2018
06:44:24
Нужно ручками прописать необходимую высоту
Ну как дурацкий вариант вычислить пропорцию и по ней подставлять высоту. ?

Только криво по-моему будет.

?
09.07.2018
07:01:12
Demuz
09.07.2018
07:04:15
Почему криво?
Не. Попутал.

Alexander
09.07.2018
07:08:47
А бывало у кого, что картинки начинают мерцать?

То есть она то появляется, то нет

Евгений
09.07.2018
07:09:24
так мерцает или то появляется то нет?

rrrrrrrrrrrrrrrrrrrrr
09.07.2018
07:09:37
А бывало у кого, что картинки начинают мерцать?
https://reactjs.org/docs/react-component.html#shouldcomponentupdate

shouldComponentUpdate

вынеси img в отдельный компонент, и в методе shouldComponentUpdate проверяй изменился ли проспс с сорусом и если нет, то в компоненте пиши return false

если изменяется - соответственно true

Страница 734 из 878