2017-04-14 12 views
0

https://github.com/callemall/material-uiでスマートイメージアップローダーを実装しようとしています。
プレースホルダdivと、IconMenuがあります。
私は次のコードを持っている:IconMenuからinput.click()が機能しない

onPlaceHolderClick =() => { 
    this.input.click(); 
}; 

// ... 
<IconMenu 
    iconButtonElement={<IconButton><MoreVertIcon /></IconButton>} 
    anchorOrigin={{ horizontal: 'right', vertical: 'top' }} 
    targetOrigin={{ horizontal: 'right', vertical: 'top' }} 
    onItemTouchTap={this.onMenuTap} 
> 
    <MenuItem primaryText="Load more" onTouchTap={this.onPlaceHolderClick} /> 
    <MenuItem primaryText="Delete all" onTouchTap={this.onDeleteAllClick} /> 
</IconMenu> 

// ... 

<div onClick={this.onPlaceHolderClick}>Load more</div> 

// ... 

<input 
    onChange={this._handleFileSelect} 
    ref={input => this.input = input} 
    style={{ display: 'none' }} 
    type="file" 
    multiple={multi} 
/> 

onPlaceHolderClickはなく、たまたまIconMenu何の場合は、たびに呼び出されます。コンソールは空です。

+0

'.focus()'を使用しようとしました – Mazz

+0

私はそれを使用しようとしましたが、不運です。また、私はそれを常に目に見えるようにしようとしました。 –

答えて

0

「もっと読み込む」をクリックすると、期待する動作は何ですか?

あなたはonPlaceHolderClick

onPlaceHolderClick = (event) => { 
    console.log(event.target.value); 
}; 

clickEventへのアクセス権を持っている。しかし、多分あなたは「負荷より」要素でHTTPリクエストを開始するために欠けていますか?

+0

標準のダイアログが表示されます。 私は 'IconMenu'の隣に新しい' IconButton'を追加しようとしましたが、うまく動作します(問題は 'IconButton'実装にあると思います)。 また、 '

関連する問題