如何将二进制数据转换为reactjs中的图像

时间:2017-02-01 05:22:42

标签: javascript reactjs

我已将图像插入数据库,而且我从数据库到服务器接收图像并反应,但在我的反应中我收到它有二进制数据。  但是如何将二进制数据转换为反应中的图像。

class Pre extends React.Component{
  constructor(props){
    super(props);
    this.state={
      post:[]
    };

  }


componentDidMount(){
   let self = this;
  axios.get('http://localhost:8080/images')
  .then(function(data) {
      //console.log(data);
      self.setState({post:data.data});
      });
  }


  render(){

console.log(this.state.post);
    return(
    <div className="w3-container">


    <p className="addboard"> <Link className="linkpre"  to="/createstudent I">
      <button className="addbutton" type="button"><h1>+</h1></button></Link></p>


      {this.state.post}

)}
)}

</div>

    );
  }
}
export default Pre;

2 个答案:

答案 0 :(得分:4)

将二进制数据转换为图像与ReactJS无关,如果您有二进制数据,则将其转换为如下图像:

<img src={`data:image/jpeg;base64,${binary_data}`} />

答案 1 :(得分:0)

给定的方法是正确的

<img src={`data:image/jpeg;base64,${binary_data}`} />

如果未渲染图像,请检查您的二进制字符串,如果 data:image / jpeg; base64 已经存在,请使用 {binary_data} 直。像

<img src={binary_data} />