2016-12-22 14 views
1

私はReactコンポーネントで作業しており、入力にはdebounceをバインドします。次のように私のコードは次のとおりです。デバウンスは機能を起動しません

class Form extends React.Component { 
    constructor() { 
    ... 
    this.deb = this.deb.bind(this); 
    } 
    ... 

    this.deb() { 
    debounce(() => { console.log('bam'); }, 400, false); 
    } 

    render() { 
    return (
     <input 
     onChange={this.deb} 
     /> 
    ) 
    } 
} 

this.debdebounceなしのすべてが動作します。私に何ができる?あなたはこの場合、コンストラクタで一度それを行う必要があるので、

答えて

2

debounceは、あなたが渡す機能の新しいデバウンスバージョンを作成します。おかげで)

class Form extends React.Component { 
    constructor(props) { 
    super(props); 
    this.deb = debounce(this.deb.bind(this), 400, false); 
    } 

    deb() { 
    console.log('bam'); 
    } 

    render() { 
    return <input onChange={this.deb} />; 
    } 
} 
+1

は素晴らしい作品、私はそれは、単純な何かを知っていましたたくさん@Tholle! –

+0

@TomekBuszewski素晴らしい!問題ない。 :) – Tholle

関連する問題