
Dmitrii
16.04.2018
19:42:01

Cenator
16.04.2018
19:42:12
эм

jslby
16.04.2018
19:42:33
давно пора

Google

Cenator
16.04.2018
19:42:58

Dmitrii
16.04.2018
19:43:50
непонял что это, я про это:

Cenator
16.04.2018
19:44:50
это какая из версий хрома, вышедших в 1997 году? я скинул скрин, у меня и те и те в одной вкладке

Dmitrii
16.04.2018
19:45:12
Version 65.0.3325.181 (Official Build) (64-bit)

Cenator
16.04.2018
19:46:26
сочувствую, но помочь не могу

Dmitrii
16.04.2018
19:47:15
спасибо за сочувствие, я всегда знал люди в этом чате очень добрые и чуткие

Sergei
17.04.2018
06:03:47
вап

Igor
17.04.2018
07:57:49
Как можно при старте RN выставить набор глобальных констант из натива?
Что бы не писать потом методы их запросов в нативных модулях (и не обрабатывать результат в колбеках/промисах).

morda
17.04.2018
07:59:46
На вход первому компоненту можно пропсы передать при старте

Igor
17.04.2018
08:04:52
Из java?

morda
17.04.2018
08:26:54
Из натива да

Stepan
17.04.2018
09:04:36
ребят, у кого были проблемы с андроидом и axios? как фиксили? Error: Network Error

Elvera
17.04.2018
09:09:02
андроид 4?

Google

Stepan
17.04.2018
09:09:14
5+

Denis
17.04.2018
09:09:42
К чему обращаешься? На локалке апи?
Или удаленное?

Роман
17.04.2018
09:10:28
у меня Error: Network Error был когда не правильно составил запрос
проверьте вы точно составили запрос как в доке описано

Stepan
17.04.2018
09:10:47
удаленно, на ios все норм работает, а вот с андроидом какой то трабл

Роман
17.04.2018
09:16:36
Add the below code under "NSAppTransportSecurity"
NSAppTransportSecurity

eeeman
17.04.2018
09:39:55
привет всем, подскажите почему во flatlist очень долго реагируют TouchableOpacity элементы? То есть я прокрутил на сотый элемент свой список, жму на TouchableOpacity и он срабатывает только через пару секунд, либо вообще не срабатывает
и иногда выдается - VirtualizedList: You have a large list that is slow to update - make sure your renderItem function renders components that follow React performance best practices like PureComponent, shouldComponentUpdate, etc.
как можно оптимизировать список?

Ivan
17.04.2018
09:43:06
extraData?

eeeman
17.04.2018
09:43:41
в data массив с объектами

Алексей
17.04.2018
09:46:04
вакансии запрещены правилами

eeeman
17.04.2018
09:47:01
даже если элементов 20 прокручу уже такие тормоза наблюдаются
неужели никто не вкладывал во флатлист список из TouchableOpacity элементов?

Ivan
17.04.2018
09:49:48
Тач записывается в стейт?

Юрий
17.04.2018
09:49:49
о! А как тогда тут ищут програмистов в команду?

Cenator
17.04.2018
09:50:33

Ivan
17.04.2018
09:50:41
extraData={this.state} для тача, дополнительно к data

eeeman
17.04.2018
09:50:46
Тач записывается в стейт?
всё гораздо проще, в стейт ничего не пишет, есть просто флат лист и массив с тысячей элементов, каждый элемент это просто TouchableOpacity

Google

Ivan
17.04.2018
09:54:05
ФлетЛист оптимизирован типа от перерендера и обновляется когда приходит новый data или extraData, в первом список, во втором дополнительные параметры

eeeman
17.04.2018
09:54:47
то есть мне туда нужно тупо позицию скролла или тача присваивать для дополнительного перерендера?

Ivan
17.04.2018
09:56:07
Не, это ответ на долгую реакцию на клик, туда можно флаг нажатого элемента отправлять

eeeman
17.04.2018
09:58:11
вообще не понял как эт освязано, флаг туда отправится только после обработки onPress элемента, а онпресс срабатывает через пару секунд только

Ivan
17.04.2018
09:58:22
А для тысячи элементов.. я бы как-то разделил их на несколько частей, но возможно, на реальном девайсе тормозить не будет

eeeman
17.04.2018
09:58:34
я на реальном и тестирую

Ivan
17.04.2018
09:59:09
Тогда делить как-то

eeeman
17.04.2018
09:59:30
Тогда делить как-то
Немного локализую проблему - у меня есть флатлист, который получает массив с нным кол-вом объектов, каждый элемент массива я вывожу просто TouchableOpacity с onPress методов который просто консолит текст и всё, тестирую на реальном девайсе htc one e8. При таком раскладе, когда я прокручу немного список и нажму на элемент, онпресс у меня срабатывает через пару секунд только, а если я прокручу и подожду пару секунд, а потом нажму, то онпресс сразу срабатывает
и мне выдается - You have a large list that is slow to update - make sure your renderItem function renders components that follow React performance best practices like PureComponent, shouldComponentUpdate, etc.
как оптимизировать и устранить выдачу этой ошибки?

Sergey
17.04.2018
10:09:54
попробуй на чем нибудь помощнее

eeeman
17.04.2018
10:10:12

Sergey
17.04.2018
10:10:21

eeeman
17.04.2018
10:10:28
да и пользователи пусть для приложения помощнее возьмут девайсы

Sergey
17.04.2018
10:11:45

Alexey
17.04.2018
10:23:24

eeeman
17.04.2018
10:35:42

Alexey
17.04.2018
10:36:34

Google

Zae
17.04.2018
10:37:35
как вы в джесте мокаете дефолтную функцию? вот есть например у меня axios.post, axios.get, я их мокнул, а если я использую axios({ method: ‘POST’ }), например?

eeeman
17.04.2018
10:40:06

Admin
ERROR: S client not available

morda
17.04.2018
10:40:23

Zae
17.04.2018
10:40:59
nock
можешь дать пример кода?

morda
17.04.2018
10:41:18
https://github.com/node-nock/nock

Alexey
17.04.2018
10:44:56

eeeman
17.04.2018
10:45:22

Alexey
17.04.2018
10:47:10
а на чем смотришь? ios / android?

eeeman
17.04.2018
10:47:47

Nikolay
17.04.2018
10:48:20
кто нибудь юзает sentry.io? я как понял его тоже бонусом залочили

Alexey
17.04.2018
10:48:39
а, ну тут трудно сказать ) я просто на macos и ios смотрю, андройды в том же эмуляторе заметно медленнее могут работать (у меня)
вообщем, если не осилишь, то пример приложи пожалуйста

eeeman
17.04.2018
10:49:20

Alexey
17.04.2018
10:49:38

eeeman
17.04.2018
10:50:48

Alexey
17.04.2018
10:51:18
:)

Алексей
17.04.2018
10:54:19
тут как бы в списках большой трейдоф между динамичным контентом и одинаковым, тот же ListView был изначально на динамичный контент в списках ориентирован, но на больших списках жрал много памяти, FlatList это оптимизация ListView по памяти

Google

Ivan
17.04.2018
10:59:48
возможно поможет PureComponent
https://github.com/facebook/react-native/issues/13649

eeeman
17.04.2018
11:32:34
и так
воспроизвел проблему
import React, {Component} from 'react';
import {
TouchableOpacity,
FlatList
} from 'react-native';
class Test extends Component {
render() {
let items = Array.apply(null, Array(1000)).map(String.prototype.valueOf,"hi");
return (
<FlatList
data={items}
horizontal={false}
numColumns={3}
keyExtractor={(game, index) => index}
renderItem={(item) => {
return (
<TouchableOpacity
style={{
width: 100,
height: 100,
backgroundColor: '#777',
margin: 5
}}
onPress={() => null}
activeOpacity={0.5}
/>
)
}}
style={{
width: '100%',
height: '100%',
padding: 5
}}
/>
)
}
}
export default Test;
имеем массив с 1000 элементами - флатлист с 1000 TouchableOpacity, на видосе прекрасно видно лаги после прокрутки

Alexander
17.04.2018
11:36:24
на реальных девайсах + релизная сборка зачастую намного живее работают

Pavel
17.04.2018
11:36:50
import React, {Component} from 'react';
import {
TouchableOpacity,
FlatList
} from 'react-native';
class Test extends Component {
render() {
let items = Array.apply(null, Array(1000)).map(String.prototype.valueOf,"hi");
return (
<FlatList
data={items}
horizontal={false}
numColumns={3}
keyExtractor={(game, index) => index}
renderItem={(item) => {
return (
<TouchableOpacity
style={{
width: 100,
height: 100,
backgroundColor: '#777',
margin: 5
}}
onPress={() => null}
activeOpacity={0.5}
/>
)
}}
style={{
width: '100%',
height: '100%',
padding: 5
}}
/>
)
}
}
export default Test;
Я конечно не настоящий сварщик, но создание списка на 1000 элементов бы за пределы render на всякий случай вытащил

eeeman
17.04.2018
11:36:55
это приложение запущено на реальном девайсе htc one e8

Alexander
17.04.2018
11:40:10
можешь попробовать написать свой touchableOpacity
с блекДжеком и шлюхами естественно)