React-native-fs: null is not an object (evaluating 'RNFetchBlob.DocumentDir')

Created on 21 Jun 2019  路  5Comments  路  Source: itinance/react-native-fs

I am getting this error

{
"message": "null is not an object (evaluating 'RNFetchBlob.DocumentDir')",
"stack": [
{
"functionName": null,
"lineNumber": 16,
"columnNumber": 29,
"fileName": "/Users/pranav/Desktop/Rocket.Chat.ReactNative/node_modules/rn-fetch-blob/fs.js"
},
{
"functionName": "loadModuleImplementation",
"lineNumber": 331,
"columnNumber": 6,
"fileName": "/Users/pranav/Desktop/Rocket.Chat.ReactNative/node_modules/metro/src/lib/polyfills/require.js"
},
{
"functionName": null,
"lineNumber": 21,
"columnNumber": 0,
"fileName": "/Users/pranav/Desktop/Rocket.Chat.ReactNative/node_modules/rn-fetch-blob/index.js"
},
{
"functionName": "loadModuleImplementation",
"lineNumber": 331,
"columnNumber": 6,
"fileName": "/Users/pranav/Desktop/Rocket.Chat.ReactNative/node_modules/metro/src/lib/polyfills/require.js"
},
{
"functionName": null,
"lineNumber": 1,
"columnNumber": 0,
"fileName": "/Users/pranav/Desktop/Rocket.Chat.ReactNative/app/lib/methods/sendFileMessage.js"
},
{
"functionName": "loadModuleImplementation",
"lineNumber": 331,
"columnNumber": 6,
"fileName": "/Users/pranav/Desktop/Rocket.Chat.ReactNative/node_modules/metro/src/lib/polyfills/require.js"
},
{
"functionName": null,
"lineNumber": 458,
"columnNumber": 1,
"fileName": "/Users/pranav/Desktop/Rocket.Chat.ReactNative/app/lib/rocketchat.js"
},
{
"functionName": "loadModuleImplementation",
"lineNumber": 331,
"columnNumber": 6,
"fileName": "/Users/pranav/Desktop/Rocket.Chat.ReactNative/node_modules/metro/src/lib/polyfills/require.js"
},
{
"functionName": null,
"lineNumber": 12,
"columnNumber": 0,
"fileName": "/Users/pranav/Desktop/Rocket.Chat.ReactNative/app/views/RoomsListView/index.js"
},
{
"functionName": "loadModuleImplementation",
"lineNumber": 331,
"columnNumber": 6,
"fileName": "/Users/pranav/Desktop/Rocket.Chat.ReactNative/node_modules/metro/src/lib/polyfills/require.js"
},
{
"functionName": null,
"lineNumber": 17,
"columnNumber": 0,
"fileName": "/Users/pranav/Desktop/Rocket.Chat.ReactNative/app/index.js"
},
{
"functionName": "loadModuleImplementation",
"lineNumber": 331,
"columnNumber": 6,
"fileName": "/Users/pranav/Desktop/Rocket.Chat.ReactNative/node_modules/metro/src/lib/polyfills/require.js"
},
{
"functionName": null,
"lineNumber": 5,
"columnNumber": 0,
"fileName": "/Users/pranav/Desktop/Rocket.Chat.ReactNative/index.js"
},
{
"functionName": "loadModuleImplementation",
"lineNumber": 331,
"columnNumber": 6,
"fileName": "/Users/pranav/Desktop/Rocket.Chat.ReactNative/node_modules/metro/src/lib/polyfills/require.js"
},
{
"functionName": "guardedLoadModule",
"lineNumber": 197,
"columnNumber": 45,
"fileName": "/Users/pranav/Desktop/Rocket.Chat.ReactNative/node_modules/metro/src/lib/polyfills/require.js"
},
{
"functionName": "global code",
"lineNumber": null,
"columnNumber": null,
"fileName": null
}
]
}

Most helpful comment

I got the same issue

All 5 comments

@pranavpandey1998official can you write your code?

I got the same issue

same issue
` console.log('About to save ${url_video} into cameraRoll...');

RNFetchBlob
.config({
    fileCache : true,
    appendExt : 'mp4'
})
.fetch('GET',url_video)
    .then((res) => {
        CameraRoll.saveToCameraRoll(res.path())
            .then(()=>console.log("stored successfully"))
            .catch(err => console.warn(err))
    })`

Be sure your package rn-fetch-blob is linked.
Check in settings.gradle the following :

include ':rn-fetch-blob'
project(':rn-fetch-blob').projectDir = new File(rootProject.projectDir, '../node_modules/rn-fetch-blob/android')

in app/build.gradle
implementation project(':rn-fetch-blob')

and in MainApplication.java

import com.RNFetchBlob.RNFetchBlobPackage;
...
new MainReactPackage(),
...
new RNFetchBlobPackage(),

In fact, it is the same as for react-native-fetch-blob, you just replace when needed

@pranavpandey1998official did you resolve the issue, if so could you tell me how?

Was this page helpful?
0 / 5 - 0 ratings