
Dmitry
21.04.2018
06:08:26

Demuz
21.04.2018
06:08:52

Dmitry
21.04.2018
06:09:43
Там типа фокус уходит с поиска
Я бы посмотрел API табов , чтобы фокус не трогали

Google

Dmitry
21.04.2018
06:11:39
Ну или, тут я не уверен, опять руками поставить фокус на инпут

Demuz
21.04.2018
06:14:24

Albert
21.04.2018
06:16:38

Oleg
21.04.2018
06:19:31
подскажите, а networking в RN исполняется в отдельном треде? может из-за networking тормозить интерфейс?

Иван
21.04.2018
06:33:57

Demuz
21.04.2018
11:03:03
Подскажите, есть ли таб навигация, где я могу просто скрыть определенный таб? Даже через тот же navigation options, к примеру.

Ivan
21.04.2018
11:16:24

Albert
21.04.2018
11:17:23

Demuz
21.04.2018
11:21:07
Имею ввиду, с таким подходом можно работать, но давая на приложение чуть большую нагрузку чем обычно, будут адские тормоза при именно таком подходе, нежели простое скрытие таб итема. Или я не прав?
Что лучше, переинициализировать табы с новым списком табов, или просто скрыть видимость Nнного таба в таббаре?

Ivan
21.04.2018
11:24:43
Дело в том что navigationOptions статический и инициализируются 1 раз. Они всегда будут статическими, ничего не изменит какой-то флаг.
Так что либо так, либо создать 2 стека с табами и открывать нужный

Google

Demuz
21.04.2018
11:27:14
Да не, это жесть по произвоительности. Сейчас нечто подобное пробовал делать. Вот с простыми компонентами всё довольно приемлемо работает, быстро, а вот с огромными списками, флэтлистами и так далее, просто ужасная производительность. Ладно, спасибо
Еще, у FlatList случайно нет проблем с производительностью? Дело в том, что даже если отображать и убирать FlatList при помощи свойства display: 'none', то все равно он список долго отрисовывает и так же пропадает с экрана адски долго. Есть ли какие-нибудь решения для таких ситуаций? Пробовал OptimizedFlatlist - жесть полная.
По логике свойство display: 'none' должно было держать компонент в отрисованном виде, но невидымым на экране. Но здесь все работает так, как будто компонент заново перерендеривается при изменении стиля с display: 'none', на display: 'flex' и получаю опять адски долгую отрисовку.

Albert
21.04.2018
11:35:51
а в чем задача? загрузить 10к элементов? в скрытом виде?

Demuz
21.04.2018
11:39:59
Задача просто скрыть огромный список, во время поиска чего либо и в этот момент после начала поиска, выдать таб навигацию, где результаты поиска будут рассортированы по табам.
Всё работает офигительно, за исключением того, что после очистки результатов поиска, тот самый лист, который мы скрыли до этого, заново отрисовывается охренительно долго.
Табы не оверлей попробую выведу. ?
э! С оверлеем офигеть классно работает.

Albert
21.04.2018
11:47:09
opensource? show me

Дмитрий
21.04.2018
13:54:13
Решил попробовать ReactNative.
Всё, как в туториале написал:
npm install -g create-react-native-app
create-react-native-app AwesomeProject
cd AwesomeProject
npm start
Выдало ошибку:
"react-native-scripts" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! AwesomeProject@0.1.0 start: react-native-scripts start
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the AwesomeProject@0.1.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\gdima\AppData\Roaming\npm-cache\_logs\2018-04-21T13_51_32_386Z-debug.log
Поставил на установку react-native-scripts, теперь это крутится 200 лет:
Этот же скрин тут http://dropmefiles.com/jRMkA

Pavel
21.04.2018
14:01:44

Дмитрий
21.04.2018
14:12:33
Не знаю как, но yarn install всё починил. Даже установка react-native-scripts завершилась

Pavel
21.04.2018
14:29:47
Все нормально - yarn активно кэширует пакеты локально и работает очень быстро. Пользуйтесь на здоровье

Albert
21.04.2018
14:33:41
Yarn instead npm?

Дмитрий
21.04.2018
14:38:52
Вроде начало получаться, но опять ошибка. Could not load exp://ip:19000. Network response timed out.

Pavel
21.04.2018
14:44:42
Фаерфолл открыть на 19000-19002 порты
Ума не приложу почему в инструкции ни слова нет об этом. Типа очевидно

Google

Дмитрий
21.04.2018
14:46:43
TCP или UDP?

Pavel
21.04.2018
14:46:57
Я тоже подумал сразу - надо же порт 19000 открыть а потом оказалось что нужно открыть ещё два?.
Клиент просто ломится по http на этот порт

Дмитрий
21.04.2018
14:50:56
Всё равно та же ошибка

Pavel
21.04.2018
15:04:28
Телефон не по 3g точно?

Admin
ERROR: S client not available

Дмитрий
21.04.2018
15:05:57
по wifi
И ноут с которого запущен упаковщик подлючен по Ethernet к роутеру

Георгий
21.04.2018
15:30:01
Привет всем
подскажите пож
А есть годные туториалы для установки реакт на Винду?

Георгий
21.04.2018
15:38:29
Я не пойму что делать. npm start делаю, пишет путь и qr код. Но expoe не подхватывает(

Albert
21.04.2018
15:42:32
Лучше пересесть на Линукс

Pavel
21.04.2018
15:42:51
Первое правило реакт нейтива - чем раньше слезешь с Экспо тем лучше
Если нет острой необходимости разрабатывать на Винде под айфон - лучше поступить именно так
Я иногда для тестов Экспо использую но уже надоело плясать с бубном вокруг него и выяснять почему не работает

Albert
21.04.2018
15:46:59
Легко вытащить код из "expo проекта" и сунуть в проект (react-native init) и запустить.

Дмитрий
21.04.2018
16:08:50
Пробовал запустить через react-native run-android:
JS server already running.
Building and installing the app on the device (cd android && gradlew.bat installDebug)...
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':app'.
> Failed to notify project evaluation listener.
> Could not initialize class com.android.sdklib.repository.AndroidSdkHandler
* Try:
Run with —stacktrace option to get the stack trace. Run with —info or —debug option to get more log output.
* Get more help at https://help.gradle.org
BUILD FAILED in 2s
Could not install the app on the device, read the error above for details.
Make sure you have an Android emulator running or a device connected and have
set up your Android development environment:
https://facebook.github.io/react-native/docs/getting-started.html

Никита
21.04.2018
16:10:15
Набери в терминал adb
что пишет?

Google


Дмитрий
21.04.2018
16:13:13
Android Debug Bridge version 1.0.39
Version 0.0.1-4500957
Installed as C:\Android\android-sdk\platform-tools\adb.exe
global options:
-a listen on all network interfaces, not just localhost
-d use USB device (error if multiple devices connected)
-e use TCP/IP device (error if multiple TCP/IP devices available)
-s SERIAL use device with given serial (overrides $ANDROID_SERIAL)
-t ID use device with given transport id
-H name of adb server host [default=localhost]
-P port of adb server [default=5037]
-L SOCKET listen on given socket for adb server [default=tcp:localhost:5037]
general commands:
devices [-l] list connected devices (-l for long output)
help show this help message
version show version num
networking:
connect HOST[:PORT] connect to a device via TCP/IP [default port=5555]
disconnect [HOST[:PORT]]
disconnect from given TCP/IP device [default port=5555], or all
forward —list list all forward socket connections
forward [--no-rebind] LOCAL REMOTE
forward socket connection using:
tcp:<port> (<local> may be "tcp:0" to pick any open port)
localabstract:<unix domain socket name>
localreserved:<unix domain socket name>
localfilesystem:<unix domain socket name>
dev:<character device name>
jdwp:<process pid> (remote only)
forward —remove LOCAL remove specific forward socket connection
forward —remove-all remove all forward socket connections
ppp TTY [PARAMETER...] run PPP over USB
reverse —list list all reverse socket connections from device
reverse [--no-rebind] REMOTE LOCAL
reverse socket connection using:
tcp:<port> (<remote> may be "tcp:0" to pick any open port)
localabstract:<unix domain socket name>
localreserved:<unix domain socket name>
localfilesystem:<unix domain socket name>
reverse —remove REMOTE remove specific reverse socket connection
reverse —remove-all remove all reverse socket connections from device
file transfer:
push [--sync] LOCAL... REMOTE
copy local files/directories to device
—sync: only push files that are newer on the host than the device
pull [-a] REMOTE... LOCAL
copy files/dirs from device
-a: preserve file timestamp and mode
sync [system|vendor|oem|data|all]
sync a local build from $ANDROID_PRODUCT_OUT to the device (default all)
-l: list but don't copy
shell:
shell [-e ESCAPE] [-n] [-Tt] [-x] [COMMAND...]
run remote shell command (interactive shell if no command given)
-e: choose escape character, or "none"; default '~'
-n: don't read from stdin
-T: disable PTY allocation
-t: force PTY allocation
-x: disable remote exit codes and stdout/stderr separation
emu COMMAND run emulator console command
app installation:
install [-lrtsdg] PACKAGE
install-multiple [-lrtsdpg] PACKAGE...
push package(s) to the device and install them
-l: forward lock application
-r: replace existing application
-t: allow test packages
-s: install application on sdcard
-d: allow version code downgrade (debuggable packages only)
-p: partial application install (install-multiple only)
-g: grant all runtime permissions
uninstall [-k] PACKAGE
remove this app package from the device
'-k': keep the data and cache directories
backup/restore:
to show usage run "adb shell bu help"
debugging:
bugreport [PATH]
write bugreport to given PATH [default=bugreport.zip];
if PATH is a directory, the bug report is saved in that directory.
devices that don't support zipped bug reports output to stdout.
jdwp list pids of processes hosting a JDWP transport
logcat show device log (logcat —help for more)
security:
disable-verity disable dm-verity checking on userdebug builds
enable-verity re-enable dm-verity checking on userdebug builds
keygen FILE
generate adb public/private key; private key stored in FILE,
public key stored in FILE.pub (existing files overwritten)
scripting:
wait-for[-TRANSPORT]-STATE
wait for device to be in the given state
State: device, recovery, sideload, or bootloader
Transport: usb, local, or any [default=any]
get-state print offline | bootloader | device
get-serialno print <serial-number>
get-devpath print <device-path>
remount
remount /system, /vendor, and /oem partitions read-write
reboot [bootloader|recovery|sideload|sideload-auto-reboot]
reboot the device; defaults to booting system image but
supports bootloader and recovery too. sideload reboots
into recovery and automatically starts sideload mode,
sideload-auto-reboot is the same but reboots after sideloading.
sideload OTAPACKAGE sideload the given full OTA package
root restart adbd with root permissions
unroot restart adbd without root permissions
usb restart adb server listening on USB
tcpip PORT restart adb server listening on TCP on PORT
internal debugging:
start-server ensure that there is a server running
kill-server kill the server if it is running
reconnect kick connection from host side to force reconnect
reconnect device kick connection from device side to force reconnect
reconnect offline reset offline/unauthorized devices to force reconnect
environment variables:
$ADB_TRACE
comma-separated list of debug info to log:
all,adb,sockets,packets,rwx,usb,sync,sysdeps,transport,jdwp
$ADB_VENDOR_KEYS colon-separated list of keys (files or directories)
$ANDROID_SERIAL serial number to connect to (see -s)
$ANDROID_LOG_TAGS tags to be used by logcat (see logcat —help


Никита
21.04.2018
16:14:40
странно. Это мой тупой способ проверить добавлено ли sdk в пути
а руками запустить
cd ./android && ./gradlew assembleRelease

Дмитрий
21.04.2018
16:18:58
https://pastebin.com/f52pSkWL

Никита
21.04.2018
16:19:31
дальше я бессилен, но несколько вопросов чтобы общую картину получить
другие проекты собираются?

Дмитрий
21.04.2018
16:19:52
Это мой первый проект
Я его даже не правил
Там стандартный hello-world из документации
Попробую через wsl собрать