diff --git a/FS.common.js b/FS.common.js index 2f9c2a3b..f8060955 100755 --- a/FS.common.js +++ b/FS.common.js @@ -572,17 +572,25 @@ var RNFS = { if (options.method && typeof options.method !== 'string') throw new Error('uploadFiles: Invalid value for property `method`'); if (options.begin) { - subscriptions.push(RNFS_NativeEventEmitter.addListener('UploadBegin', options.begin)); + subscriptions.push(RNFS_NativeEventEmitter.addListener('UploadBegin', (res) => { + if (res.jobId === jobId) options.begin(res); + })); } else if (options.beginCallback) { // Deprecated - subscriptions.push(RNFS_NativeEventEmitter.addListener('UploadBegin', options.beginCallback)); + subscriptions.push(RNFS_NativeEventEmitter.addListener('UploadBegin', (res) => { + if (res.jobId === jobId) options.beginCallback(res); + })); } if (options.progress) { - subscriptions.push(RNFS_NativeEventEmitter.addListener('UploadProgress', options.progress)); + subscriptions.push(RNFS_NativeEventEmitter.addListener('UploadProgress', (res) => { + if (res.jobId === jobId) options.progress(res); + })); } else if (options.progressCallback) { // Deprecated - subscriptions.push(RNFS_NativeEventEmitter.addListener('UploadProgress', options.progressCallback)); + subscriptions.push(RNFS_NativeEventEmitter.addListener('UploadProgress', (res) => { + if (res.jobId === jobId) options.progressCallback(res); + })); } var bridgeOptions = {