Alex 🗽👇
тоже руки чесались исправить
Aleksandr
Можно ли у стэкнавигатора ограничить размер стека?
Дмитрий
Можно ли у стэкнавигатора ограничить размер стека?
А зачем, если не секрет? Мне бы в голову такое никогда не пришло.
Aleksandr
Ну например на каком то экране (А) есть кнопка, которая вызывает диспатч, у нее есть родительская компонента которая подвязана к стору. Ну и получается что когда мы перешли на этот экран несколько раз (у нас нет на нем кнопки назад, а меню и мы начинаем ходить экран участники - главная - участники, к примеру такой маршрут), старые же экраны (А) остаются в стеке и их компоненты (к примеру родитель для кнопки) так же слушают стор, и если мы делаем диспатч (нажатие на кнопку), то каждый из этих экранов, которые были добавлены стэк так же реагируют, что ведет за собой потерю производительности (у меня сильную). Поэтому не знаю что с этим делать, была мысль ограничить размер стэка.
Дмитрий
Ну например на каком то экране (А) есть кнопка, которая вызывает диспатч, у нее есть родительская компонента которая подвязана к стору. Ну и получается что когда мы перешли на этот экран несколько раз (у нас нет на нем кнопки назад, а меню и мы начинаем ходить экран участники - главная - участники, к примеру такой маршрут), старые же экраны (А) остаются в стеке и их компоненты (к примеру родитель для кнопки) так же слушают стор, и если мы делаем диспатч (нажатие на кнопку), то каждый из этих экранов, которые были добавлены стэк так же реагируют, что ведет за собой потерю производительности (у меня сильную). Поэтому не знаю что с этим делать, была мысль ограничить размер стэка.
Если диспатчишь навигаци можно прикрутить счётчик, конечно, но зачем? Ограничение стека приведёт к тому, что пользователь окажется в тупике и не сможет перейти куда хочет. Юзай goBack и reset (если мы про react-navigation)
Дмитрий
Нельзя допускать, чтобы пользователь открывал идентичные страницы дважды, это перечит принципам навигации и стека.
Дмитрий
Ну по крайней мере пытаться)
Aleksandr
Да про react navigation, но reset же ломает нормальную анимацию (справа-налево)
Дмитрий
А ты какой-небудь отвлекающий манёвр придумай чтоб юзер не заметил)))
Aleksandr
Спасибо, буду дальше думать
Alexey RGB
Парни, всем привет
Alexey RGB
есть проект https://github.com/jitsi/jitsi-meet
Alexey RGB
мне в этой демке под iOS нужно исправить UI
Alexey RGB
подскажите - в какое IDE все это запустить (как единый проект)?
Alexey RGB
и вообще - какой файл отвечает за UI в проекте (за UI определенного контроллера)
Alex
https://github.com/jitsi/jitsi-meet/blob/master/react/features/remote-control/components/RemoteControlAuthorizationDialog.js
Alex
вот тут файлы
Alex
запускать как обычное RN приложение
Alex
можно без IDE
Alex
запускать через react-native run-ios
Alex
// наверное, сам не пробовал, но выглядит +- стандартно
Alexey RGB
я вот привык, что обычный swift или obj-c проект реально запустить через xcode как единый проект - подтянутся файлы, либы и прочее
Alexey RGB
в RN это реально?
Alex
yarn install && react-native run-ios
Alex
плюс-минус этого достаточно
Alex
ну либо npm install
Alexey RGB
а, еще вопрос - пытаюсь эту хрень дебажить на девайсе (iphone) - вылетает с красным экраном и надписью, что таймаут к айпишнику
Alexey RGB
хотя айпишник верный указываю
Kirill
хотя айпишник верный указываю
в RCTWebSocketExecutor.m? девайс и машина в одной сети? на машине запущен пекаджер?
Alexey RGB
да, в нем. как проверить насчет сети и пекеджера?
Kirill
в браузере на телефоне набрать http://YOUR_IP:8081/debugger-ui
Alexey RGB
на мобайле не открывает
Kirill
значит в этом и косяк)
Alexey RGB
как поправить?
Kirill
очевидно нужно запустить дебагер и работать в одной сети))
Alexey RGB
понятно) вопрос - как в одной сети организовать телефон и комп?
Kirill
ну в одной вайфай сети например
Alexey RGB
черт побери, логично, на работе 3 точки разных - не заметил что к разным подключены девайсы
Alexey RGB
спасибо
Alexey RGB
не, не сработало
Kirill
не, не сработало
/debugger-ui открывается теперь с телефона?
Alexey RGB
нет
Kirill
значит либо ip неверный, либо пекаджер не запущен, либо вайфай разные
Alexey RGB
при старте пекеджера такая вот хрень в терминале
Alexey RGB
ERROR Error watching file for changes: EMFILE {"code":"EMFILE","errno":"EMFILE","syscall":"Error watching file for changes:","filename":null} Error: Error watching file for changes: EMFILE at exports._errnoException (util.js:1022:11) at FSEvent.FSWatcher._handle.onchange (fs.js:1360:11)
Alexey RGB
может из-за нее?
Alexey RGB
iMac:jitsi-demo-ios alexey$ npm start npm ERR! missing script: start
Alexey RGB
и такое есть
Kirill
и такое есть
кто-то package.json значит испортил, там в секции scripts должно быть "start": "node node_modules/react-native/local-cli/cli.js start"
Alexey RGB
добавил
Alexey RGB
npm ERR! A complete log of this run can be found in: npm ERR! /Users/alexeygurbo/.npm/_logs/2017-07-27T08_22_37_899Z-debug.log iMac-pavel:jitsi-demo-ios alexeygurbo$ npm start npm ERR! file /Users/alexeygurbo/Documents/Work/jitsi-demo-ios/package.json npm ERR! code EJSONPARSE npm ERR! Failed to parse json npm ERR! Unexpected token ' ' at 108:59 npm ERR! "node node_modules/react-native/local-cli/cli.js start”, npm ERR! ^ npm ERR! File: /Users/alexeygurbo/Documents/Work/jitsi-demo-ios/package.json npm ERR! Failed to parse package.json data. npm ERR! package.json must be actual JSON, not just JavaScript. npm ERR! npm ERR! Tell the package author to fix their package.json file. JSON.parse
Alexey RGB
блин, ковычки не те
Alexey RGB
один хрен
Alexey RGB
попробую убрать запятую
Igor
чувак, ну там же есть ридми
Igor
https://github.com/jitsi/jitsi-meet/blob/master/doc/mobile.md в нем есть ссылка
Igor
как запускать мобильную часть
Alexey RGB
да как запустить я разобрался
Alexey RGB
а вот с дебагом беда
Igor
чтобы дебаг заработал запусти как там написано
Igor
а потом уже в эмуляторе или устройстве, через меню разраба включи ремоут дебаг
Alexey RGB
ну, я все так и делал - и это не сработало, поэтмоу я ща тыкаю уже куда попало на авось
Igor
"не сработало" - брейк поинты не работают в иде, или в консоли ничего нет? даже тупо console.log не видешь?
Alexey RGB
в самом проекте в xcode там пару строк кода
Alexey RGB
дебажить там нечего
Igor
у реакт натива свой дебагер, встроенный есть http://localhost:8081/debugger-ui просто заходишь по этому адресу, и в браузере прям открываешь консоль и там все видно
Igor
cmd+ctrl+shift
Igor
ремоут дебаг врубаешь
Igor
и можешь консоль лог слать и прочее
Igor
брейкпоинты тоже пашут через браузер
Kirill
да у него пекаджер даже не запускается
Kirill
судя по его словам
Igor
он же сказал что запустил все
Kirill
ошибки в терминале как я понял при старте
Igor
кстати, когда через браузер дебажишь, как избавится от этого ворнинга? я не понимаю что с табом в браузере нужно сделать чтобы он в бэкграунде не был
Brown
У меня мак открывается
Alexey RGB
м
Alexey RGB
http://prntscr.com/g0vmdk