2017-02-03 6 views
1

У меня возникла проблема с тем, что событие onChange в preact не работает. В react все работает нормально. onInput тоже не работает.preact: OnChange не работает с входными файлами

Пример немого кода, который должен работать (preact + typescript)

export class Download extends React.Component<DownloadProps, {}> { 
    constructor(props: DownloadProps) { 
    super(props); 
    this.state = { 
     imgSrc: '' 
    }; 
    } 

    public componentDidUpdate() { 
    console.log('did2') 
    } 
    public render() { 
     console.log('render', this.state); 
     return <div className={s.root}> 
     <input className='fileInput' type='file' onChange={() => { this.handleImageChange() }} /> 
     <div className={s.comment}>Upload</div> 
     </div>; 
    } 

    private handleImageChange() { 
     this.setState({imgSrc: '30'}) 
    } 
} 
+0

я не знаю, о машинописном тексте, но, как я увидел этот код: http://blog.wolksoftware.com/working-with-react-and-typescript, Я думаю, вместо ключевого слова 'function' использовать' public' –

+0

@MayankShukla, 'handleImageChange'не является частью класса «Download». Я могу использовать 'private handleImageChange' и помещать его в класс, но это не решение –

+0

Я думаю, что вы забыли написать' this', попробуйте следующее: 'this.handleImageChange.bind (this)' –

ответ

 Смежные вопросы

  • Нет связанных вопросов^_^