
Enjoy the
09.08.2017
22:48:13
{kek ? true : ''}

Alexsandr
09.08.2017
22:49:32

Google

Anton
09.08.2017
22:50:23
пропсы

Alexsandr
09.08.2017
22:50:56
ну с пропсами я не пробывал

Anton
09.08.2017
22:51:27
просто хотел такую конструкцию сократить {this.lolkek ? <Text active></Text> : <Text active></Text>}

Alexsandr
09.08.2017
22:51:37
ты можешь вот так сделать <Text props={{this.lolkek && 'active'}} />

Andrew
09.08.2017
22:51:47
{kek ? true : ''}
const money = 101;
const message = money > 100 ? 'продать товар' : 'недостаточно денег';
document.write(message);

Alexsandr
09.08.2017
22:52:02
но честно я не уверен

Andrew
09.08.2017
22:52:05
во второй строчке тернарный оператор

Alexsandr
09.08.2017
22:52:55
но не проще тогда уже сделать так
<Text active>{ this.lolkek ? text : another text }</Text>
а то иначе уже тебя разные текста рендрится

Andrew
09.08.2017
22:55:50

Stas
10.08.2017
08:19:24
как вы решаете проблему пересоздания активити в android при работе с внешними приложениями вроде камеры или выбора файла?

Google

Denis
10.08.2017
08:42:50

Stas
10.08.2017
08:43:10
Никак
просто показываете главный экран? )
сори, у нас активити ушла, вот вам новая
думаю, может кастыль написать... в application или bundle стейт redux-а сохранять

Albert
10.08.2017
08:46:00
Привет. Подскажите можно ли как то на нажатие в таббаре открывать action sheet?
использую react-navigation?

Alex
10.08.2017
08:57:17

Albert
10.08.2017
08:59:25
можно )
Отлично, а каким образом на него повесить onPress? конкретно на 1 таб.

Alex
10.08.2017
08:59:33
По простому ты можешь вместо вьюхи для экрана подложить touchable, либо пишешь компонент для табов и контролируешь табы сам
да на onPress вызываешь то что тебе нужно

Albert
10.08.2017
09:00:41
Оуу, я понял) спасибо
Add: {
screen: <TouchableOpacity>
<Text>Press</Text>
</TouchableOpacity>,
navigationOptions: {
tabBarLabel: ' ',
tabBarIcon:
<Icon
size={70}
name='add-circle'
color='#FFFFFF'
style={{
shadowColor: '#000000',
shadowOffset: {
width: 0,
height: 3
},
shadowRadius: 3,
shadowOpacity: 0.5
}}
/>
}
},Сделал так, но он ругает, что в сцене должен быть реакт компонент

Alex
10.08.2017
09:23:07
заимпорть сверху React

Egor
10.08.2017
09:23:46
Что-то не могу понять, неужели нет простого способа поставить кодом фокус в TextInput, например, после заполнения первого TextInput в форме?
Решения какие-то чересчур сложные

Alex
10.08.2017
09:24:38
ну взять реф и тыкнуть фокус ?

Egor
10.08.2017
09:24:49
нет метода focus говорит

Alex
10.08.2017
09:25:05
хм

Egor
10.08.2017
09:25:12
на SO какие-то хаки с this._component.focus()

Alex
10.08.2017
09:26:16

Egor
10.08.2017
09:26:47
https://stackoverflow.com/a/40837333/7931177 попробую это

Google

Mikhail
10.08.2017
09:27:59
Всем привет, ребят я понимаю redux это библотека не про работу с сетью а что-то немного другое? Просто с чистым react не работал, а задача стоит разобраться с react native, что посоветуете для изучения по работе с сетями?

Alex
10.08.2017
09:29:53

Egor
10.08.2017
09:30:09
типа выпилили это, как я понял
у меня 0.47

Alex
10.08.2017
09:30:20
печаль

Mikhail
10.08.2017
09:30:20
Или стандартные решения что описываются в https://facebook.github.io/react-native/docs/network.html тоже подходят?

Egor
10.08.2017
09:31:02
fetch и что еще нужно =)))
про какой-то axios еще говорят...

Albert
10.08.2017
09:31:17

Алексей
10.08.2017
09:31:26

Alex
10.08.2017
09:31:50
@albert https://gist.github.com/alex-nask/64d5e26fec3cd65b88a953cd2d10c1e6 что то типа такого

Roma
10.08.2017
09:45:47
Ребят, посоветуйте что-нибудь годное для маскИрованного ввода

Egor
10.08.2017
10:03:49
в общем в 46 работает переход от инпута к инпуту через
TextInputState.focusTextInput(findNodeHandle(node))
где node это ref на следующий инпут

Alex
10.08.2017
10:04:39

Egor
10.08.2017
10:05:50
поправочка: 0.46, но думаю что будет и в 47 нормально

Danil
10.08.2017
10:23:24
Как правильно в RN сетапить анимацию с текущего стейта если другая анимация еще не законченна?
Вот snack: https://snack.expo.io/S1uRQhYDZ
Если тапать на прямоугольник с задержкой 1 секунду, то число красиво баунсит. А если начать быстро тапать, то начинает прыгать.

Alex
10.08.2017
10:30:19

Danil
10.08.2017
10:30:58
Ну у меня кейс когда анимация может начаться и мне надо просто не заканчивая старую начать новую

Google

Алексей
10.08.2017
10:39:50

Danil
10.08.2017
10:40:18

Алексей
10.08.2017
10:40:22
да

Roma
10.08.2017
10:53:09

Egor
10.08.2017
11:26:00
https://www.npmjs.com/package/react-native-masked-text

Danil
10.08.2017
11:36:41

Vadim
10.08.2017
11:54:20
У react-native-masked-text под капотом https://github.com/vanilla-masker/vanilla-masker
Если хочешь кастомную логику или лень переделывать свой инпут, то в самый раз

Albert
10.08.2017
12:04:49
Execution failed for task ':realm:compileReleaseJavaWithJavac'. никто не сталкивался с такой проблемой на андроиде? на ios все норм

Egor
10.08.2017
12:34:10
я может быть, но не помню =) постоянно всякое дерьмо с реалм
например Jest делает временные файлы для realm в папке проекта а пакаджер пытается их упаковать в bundle и виснет

Albert
10.08.2017
12:49:52
ну я это заметил на 0.46+ версии, на 0.45 все ок(

Egor
10.08.2017
12:51:34
у меня сейчас 0.46 - собрал только что
:realm:compileReleaseJavaWithJavac UP-TO-DATE
всё норм
не знаю даже


Nikita
10.08.2017
14:22:22
Ребята, подскажите плиз, начал изучать redux-saga, пытаюсь понять как реализовать следующий кейс, используя преимущества этой либы: в action должно выполнится 2 запроса, если первый запрос вернет fail, то следующий выполняться не должен, если вернет success, то нужно взять данные от response и выполнить запрос 2 и уже задиспатчить в стор. (Как тут избежать исользования if'ов в worker)
// Watcher
function* watchLogin() {
yield takeLatest(actions.LOGIN.REQUEST, login);
}
// Worker
function* login({ facial_image, password, device_imei }) {
// console.log('inaction', action);
const errorCodesValidate = [3000, 3001, 6000];
const result = yield call(fetchValidate, { facial_image }, errorCodesValidate);
if (result.facial_image_id) {
const facial_image_id = result.facial_image_id;
yield call(fetchLogin, { facial_image_id, password, device_imei }, errorCodesValidate);
} else {
// Failure
}
}

Egor
10.08.2017
14:24:12
может try / catch ?

Nikita
10.08.2017
14:25:00
ну это по сути тот же callback hell, нет?

Egor
10.08.2017
14:25:19
function* submitPassCode<T>(action: Action): Iterable<T> {
try {
const passCode: PassCode = action.payload
const userID: any = yield call(api.sendPassCode, passCode)
yield put(submitPassCodeDone())
yield put(setActiveUserID(userID))
} catch (error) {
yield put(submitPassCodeFailure({error}))
}
}
ну наприме у меня вот так

Google

Egor
10.08.2017
14:25:57
если yield call(api.sendPassCode, passCode) валится то отлавливается в catch
вроде более-менее понятно и линейно в целом
адок можно и на промисах устроить

Andrew
10.08.2017
14:26:58
уже лучше. А еще проще писать как:
function* watchLoadComments() {
while (true) {
const {payload} = yield take(CommentsActionTypes.LOAD_COMMENTS_REQUEST);
try {
const {data} = yield call(
axios.get,
/api/comments?last_days=${payload.lastDaysLimit}
);
yield put(CommentsActions.loadComments.success(data));
} catch (error) {
yield put(CommentsActions.loadComments.failure(error));
}
}
}

Egor
10.08.2017
14:27:23
тут канал?

Nikita
10.08.2017
14:27:48

Andrew
10.08.2017
14:28:00
да

Egor
10.08.2017
14:28:02
где-то должен быть channel =)))

Andrew
10.08.2017
14:28:39
канал для саги?

Nikita
10.08.2017
14:32:05
Сейчас переформулимрую вопрос)

Andrey
10.08.2017
14:32:59
Да нормас все, напиши еще одну сагу которая будет слушать результат первой

Nikita
10.08.2017
14:34:51

Alex
10.08.2017
16:38:06

Egor
10.08.2017
18:51:54

Alex
10.08.2017
19:02:28
я юзаю библиотечку своего знакомого - repoint, обертка над изоморфик фетчем

Yuriy
10.08.2017
19:29:21
оп, посоветуйте navigation для андройда http://airbnb.io/native-navigation/ , https://github.com/wix/react-native-navigation, или что-то посоветуйте, что бы и redux дружило хорошо

Alex
10.08.2017
19:31:05

Yuriy
10.08.2017
19:32:51
а кто что юзает?, @alexnask твой личный опыт какой? или не заморачиваться с нативным, хотя имел опыт с NavigatorIOS