react native получить значение TextInput

387
07 марта 2017, 16:21

Не могу понять, как получить значение из InputText. Пробую разные варианты - меняются ошибки.

import React, { Component, PropTypes } from 'react';
import {
  AppRegistry,
  StyleSheet,
  Text,
  TextInput,
  ListView,
  View,
  Navigator,
  TouchableHighlight,
  Alert,
  ToolbarAndroid,
  Image,
  AsyncStorage,
} from 'react-native';
let onPressAddCar = (value) => {
      console.log('Добавлено авто: ', this.state.car_brand);
    }
export default class Tst1 extends Component {
  constructor() {
    super();
    this.state = { 
      car_brand: '',
      car_model: '',
      car_m_year: '',
    }
  }
  //-----------------RENDER TILE-------------------------------
  render() {
    return (
      <View style={{flexDirection: 'column'}}>
        <ToolbarAndroid
          style={styles.toolbar}
          title="МОИ АВТО"
          titleColor='white'
        />
        <Text style={styles.menu_item} onPress={onPressAddCar}>
          {'добавить авто'.toUpperCase()} {'\n'}
          владею сейчас
        </Text>
        <TextInput
          style={styles.input_list_item}
          onChangeText={(car_brand) => this.setState({car_brand})}
          value={this.state.car_brand}
          placeholder={"Фирма"}
        />
        <TextInput
          style={styles.input_list_item}
          onChangeText={(car_model) => this.setState({car_model})}
          placeholder={"Модель"}
        />
        <TextInput
          style={styles.input_list_item}
          keyboardType={'numeric'}
          onChangeText={(car_m_year) => this.setState({car_m_year})}
          placeholder={"Год выпуска"}
        /> 
        <TouchableHighlight
          style={styles.input_end_btn}
          onPress={onPressAddCar}>
            <Text
            style={styles.input_end_btn_txt}>
            OK
            </Text>
        </TouchableHighlight>
    </View> 
    );
  }
}

/* --------------------StyleSheet ----------------------------*/
const styles = StyleSheet.create({
    toolbar: {
    height: 50,
    backgroundColor: 'steelblue',
},
    menu_item: {
    height: 50,
    fontSize: 13,
    color: '#555',
    backgroundColor: '#ddd',
    fontWeight: 'normal',
    textAlign: 'left',
    paddingTop: 10,
    paddingLeft: 50,
  },
    input_list_item: {
    height: 50,
  },
    input_end_btn: {
    height: 50,
    width: 50,
    backgroundColor: 'steelblue',
    borderRadius: 50,
  }, 
  input_end_btn_txt: {
    fontWeight: 'bold',
    textAlign: 'center',
    color: '#fff',
    paddingTop: 15,
  },
});
/* -----------------END of StyleSheet ----------------------------*/
AppRegistry.registerComponent('Tst1', () => Tst1);

Выдает вот такую ошибку при нажатии кнопки (функция алерта введенного в первом поле в консоль не работает).

READ ALSO
Числа Фибоначчи(кролики) [требует правки]

Числа Фибоначчи(кролики) [требует правки]

Пара кроликов дает приплод новую пару кроликов на третий месяц, а последующие месяцы - ежемесячноДети,достигающие 3 месяцев начинают давать...

240
Задания по javascript

Задания по javascript

Помогите найти задачи по javascript для начинающих, желательно из реальной практикиСпасибо

294
Отловить цифры перед заданным текстом в jQuery

Отловить цифры перед заданным текстом в jQuery

Для динамической смены курса валюты на страницы пытаюсь отловить все цифры перед текстом 'рубль':

336