Доступ к ref с помощью обратного вызова onFocus при использовании tcomb-form-native
Я использую https://github.com/gcanti/tcomb-form-native и вот фрагмент кода
_renderScene(route, navigator) {
var Cook_time = {
onFocus: () => {
console.log('cook time has focus');
console.log(this.refs);
},
};
options.fields['Cook_time'] = Cook_time;
return (
<View style={{ flex: 1 }}>
<ScrollView style={styles.container} ref="scrollView">
<Form
ref="form"
type={Recipe}
options={options}
onChange={this.onChange}
onFocus={this.onChange}
/>
console.log печатает объект {}, когда он должен ссылаться на scrollView, не зная, чего мне не хватает. А вот код, который устанавливает саму форму
var Recipe = t.struct({
Recipe_name: t.String,
yield: t.maybe(t.String),
Prep_time: t.maybe(t.String),
Cook_time: t.maybe(t.String),
source: t.maybe(t.String),
})
var options = {
fields: {
yield: {
label: 'Yield',
},
Prep_time: {
label: 'Preparation time',
},
source: {
label: 'Source',
placeholder: 'family, friends, website ...',
onFocus: function () {
console.log('source has focus');
}
}
}
};
1 ответ
Атрибут ref является обратным вызовом, и в соответствии с исходной документацией все, что мне нужно сделать, это сохранить ссылку как
<ScrollView style={styles.container} ref={(ref) => this.myScrollView = ref}>