如何使用React.js将图像上传到Firebase

时间:2018-06-10 15:53:10

标签: javascript reactjs firebase firebase-storage

使用react js我需要将多个图像上传到firebase我尝试使用以下代码无法多次上传。

//display multi
handleChange(event) {

    const file = Array.from(event.target.files);
    this.setState({ file });   
}
//upload multi
fileuploadHandler = () => {

    const storageRef = fire.storage().ref();
    storageRef.child(`images/${this.state.file.name}`)
        .putFile(this.state.file).then((snapshot) => {

    });
  }

render() {
    return (
        <div className="App">
            <input id="file" type="file" onChange={this.handleChange.bind(this)} required multiple />
            <button onClick={this.fileuploadHandler}>Upload!</button>               
            </div>

    )

}

1 个答案:

答案 0 :(得分:1)

要处理多个文件,您需要循环输入的files属性。

所以:

const storageRef = fire.storage().ref();
this.state.file.forEach((file) => {
  storageRef
      .child(`images/${file.name}`)
      .putFile(file).then((snapshot) => {
  })
});