@Smuzzzzzi

Автоматическое сохранение в input?

Друзья, подскажите, как сделать автоматическое сохранение в input при выборе фото!
Сейчас есть форма, где пользователь выбирает фото, жмет сохранить. Все отлично работает.
Нужно, чтоб после выбора фото, оно мгновенно применялось.
Мой input
<Input
  type="file"
  id="picture"
  name="picture"
  accept="image/*"
  onChange={this.onChangePicture}
/>

Сохранение
onChangePicture = e =>
    this.setState({
      data: { ...this.state.data, [e.target.name]: e.target.files[0] }
    });
  onSubmit = e => {
    e.preventDefault();
    const errors = this.validate(this.state.data);
    this.setState({ errors });
    if (Object.keys(errors).length === 0) {
      this.setState({ loading: true });
      this.props.submit(this.state.data);
    }
  };
  • Вопрос задан
  • 49 просмотров
Решения вопроса 1
@Sayto
Вы хотите вызвать сабмит на загрузке фотографии? Вы можете передать любой хэндлер в коллбэк функции setState.

onChangePicture = e =>
    this.setState(
        { data: { ...this.state.data, [e.target.name]: e.target.files[0] } },
        this.onSubmit
    );

onSubmit = e => {
    if (e) e.preventDefault();
    const errors = this.validate(this.state.data);
    this.setState({ errors });
    if (Object.keys(errors).length === 0) {
      this.setState({ loading: true });
      this.props.submit(this.state.data);
    }
  };
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Instamart Москва
До 130 000 руб.
AEON Москва
от 120 000 до 180 000 руб.
16 июн. 2019, в 13:00
600 руб./в час
16 июн. 2019, в 12:42
3000 руб./за проект