首页 > 解决方案 > 修复 reactjs 库中组件的功能错误

问题描述

我在 reactjs 名称中使用了一个库:React-fileupload-progress,所以它有一个组件名称

<FileUploadProgress key='ex1' 
    url={this.props.url+this.state.nameDocument}
    onProgress={this.onProgress}
    onLoad={this.onLoaded}
    onError={this.onError}
    onAbort={ (e, request) => {console.log('abort', e, request);}}
    beforeSend={this.beforeSend}
/>

所以,这个组件会向 URL 发送一个请求,在发送请求之前,它会运行函数beforeSendbeforeSend帮助我在发送前调整数据,将返回一个请求,然后,它将请求发送到 URL,响应将在 3 个函数中返回(onLoad, onError, onAbort) . 但是,当我在发送之前使用时,我检测到一个错误,我希望它停止发送请求,但它没有。在控制台中,它显示

未捕获的类型错误:无法读取 FileUploadProgress._doUpload 处未定义的属性“发送”

所以,我不知道如何解决它。这里是这个组件的道具:

FileUploadProgress.propTypes = {
    url: _propTypes2.default.string.isRequired,
    formGetter: _propTypes2.default.func,
    formRenderer: _propTypes2.default.func,
    progressRenderer: _propTypes2.default.func,
    formCustomizer: _propTypes2.default.func,
    beforeSend: _propTypes2.default.func,
    onProgress: _propTypes2.default.func,
    onLoad: _propTypes2.default.func,
    onError: _propTypes2.default.func,
    onAbort: _propTypes2.default.func
};

标签: javascriptreactjs

解决方案


我有权利。在 beforeSend 结束时,我添加:

return {
...request, 
send: function(){}
}

于是,就解决了。


推荐阅读