React redux读取.txt文件

时间:2017-12-17 00:11:13

标签: javascript reactjs redux

我一起使用React和Redux。 我有一个名为 UploadFileAction.js 的操作文件,下面是代码:

export const selectFile = (file) => {
    return {
        type: 'FILE_SELECTED',
        payload: file
    }
};

file参数包含上传的文件。

  

我想做什么

我想将文件内容发送到我的 reducer 而不是整个文件作为有效负载..

  

我尝试了什么

let fileReader = new FileReader();
fileReader.readAsText(file, "UTF-8");
fileReader.onload = function(fileLoadedEvent){
    let textFromFileLoaded = fileLoadedEvent.target.result;
}

现在textFromFileLoaded变量包含我的文件文本,但我无法在payload中传递它。

1 个答案:

答案 0 :(得分:0)

也许我误解了,但您必须发送包含文件文本的操作的结果,以将其传递给reducer。所以看起来应该是这样的:

 let fileReader = new FileReader();
 fileReader.onload = function(fileLoadedEvent){
    dispatch(selectFile(fileLoadedEvent.target.result));
 } 
 fileReader.readAsText(file, "UTF-8");

进一步阅读此主题:https://redux.js.org/docs/basics/Actions.html