Почему _this.state.searchAddress () не является функцией?

Я пытаюсь выполнить поисковый запрос в response-native, используя axios, однако, когда я пытаюсь прочитать его на консоли, я получаю эту ошибку:

_this.state.searchAddress is not a function.(In'`this.state.searchAddress()','_this.state.searchAddress' is "data"

Я изучаю реакцию на C++, поэтому я не совсем понимаю эти ошибки. Ошибка выкидывается на addressSearch.

class MainScreen extends Component {
  state = {
    searchAddress: "",
    addressData: {}
  };

  addressSearch = () => {
    console.info(this.state.searchAddress);
    Keyboard.dismiss();
    const addyZip = this.state.searchAddress();

    const query =
      "https://www.googleapis.com/civicinfo/v2/voterinfo?address= " +
      addyZip +
      "&electionId=6000&key = ";

    axios.get(query).then(response => {
      console.info(response);
    });
  };

  render() {
    return (
      <Container>
        <SearchHeader
          value = {this.state.searchAddress}
          onChangeText = {searchAddress => this.setState({ searchAddress })}
          addressSearch = {this.addressSearch}
        />
      </Container>
    );
  }
}

export default MainScreen;
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
0
0
329
2

Ответы 2

Переменная this.state.searchAddress - это строка, которую вы изначально устанавливаете как "", когда вы устанавливаете начальное состояние. Вы пытаетесь вызвать строку как функцию, но строка не является функцией.

Вы, наверное, имели в виду:

const addyZip = this.state.searchAddress;

в основном в функции addressSearch вам нужно изменить

const addyZip = this.state.searchAddress ();

к

const addyZip = this.state.searchAddress;

поскольку this.state.searchAddress - это строка, а не функция.

Другие вопросы по теме