2016-07-31 17 views
0

我正在試驗redux-form v6.0.0 rc.3並試圖添加一個字段來上傳多個圖像。添加一個字段,用於上傳6.0版本的多個圖像rc.3的還原形式

理念1:添加一個字段類型= 「文件」

attachImages(images) { 
     console.info('images received: ', images); 
    } 

<Field 
         name="pics" 
         component={renderInput} 
         placeholder="Pictures" 
         onDrop={this.attachImages} 
         type="file" /> 

理念2:使用第三方懸浮窗組件:

onDrop(files, evt) { 
     console.log('received files: ', files); 
     evt.preventDefault(); 
    } 

<Dropzone 
        onDrop={ this.dropFile } 
       > 
        <div>Try dropping some files here, or click to select files to upload.</div> 
       </Dropzone> 

我用盡全力的想法,但第一個不能觸發onDrop函數,第二個想法似乎更有希望,但是,我不知道如何添加一個字段與6.0.0 rc.3的API。有誰知道?

回答

2

在經過很多努力之後,我通過稍微修改Dropzone組件的onDrop回調來提出我的第二個想法。修改包括使用reduxForm包裝器組件的dispatch函數和動作類型爲redux-form/CHANGE。

onDrop(files, evt) { 
     console.log('received files: ', files); 
     evt.preventDefault(); 
     this.props.dispatch({ 
      type: 'redux-form/CHANGE', 
      field: 'images', 
      value: files, // files is an array of File 
     }); 
    } 

然後在減速,我看的動作類型redux-form/CHANGE和提取文件的上傳。這可能有些過於黑澀,但它適用於當前版本6的RC3 API。

+0

接受,直到有人提出更好的解決方案。希望這將有利於某個有一天從搜索引擎登陸這個頁面的人 – TonyGW

+0

您是否曾經找到過除上述之外的解決方案? – John

相關問題