Доступ к 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}>
Другие вопросы по тегам