I'm trying to upload a file to firebase storage but i keep getting this error:
Error: Firebase storage is required to upload files
at Object.uploadFile (storage.js:63)
at Object.uploadFile (createFirebaseInstance.js:139)
at classActions.js:11
This is the call:
export const createClass = (_class) => {
return (dispatch, getState, {getFirebase, getFirestore}) => {
// Call to DB
const firestore = getFirestore();
const firebase = getFirebase();
firestore.collection('classes').add({
..._class,
createdAt: new Date()
}).then(() => {
console.log(_class.image);
firebase.uploadFile('imgs', _class.image);
}).then ( () => {
dispatch({
type: 'ADD_CLASS',
class: _class
})
}).catch( (err) => {
dispatch({
type: 'ADD_CLASS_ERROR',
error: err
});
});
}
};
I know that the image is not void,and the rules for storage in the firebase console are set to public. Also, the folder already exists, just in case.
handleChangeImage = (e) => {
this.setState({
image: e.target.files[0]
});
}
<input type="file" id="image" onChange={this.handleChangeImage}/>
I can't figure out what I could be doing wrong.