Reactjs 显示React骨架加载程序,直到图像完全加载

Reactjs 显示React骨架加载程序,直到图像完全加载,reactjs,Reactjs,我的组件中有一个react加载骨架,我的页面中有一个使用img标记加载的静态图像,我想显示一个骨架组件,直到图像加载。 我尝试了react.lazy和suspent,但它只在组件加载之前显示,在图像完全加载之前不起作用 从“React”导入React; 导出默认类SlideItems扩展React.Component{ render(){ 返回( ); } }首先向类添加构造函数和状态: constructor(props) { super(props); thi

我的组件中有一个
react加载骨架
,我的页面中有一个使用img标记加载的静态图像,我想显示一个骨架组件,直到图像加载。 我尝试了react.lazy和suspent,但它只在组件加载之前显示,在图像完全加载之前不起作用

从“React”导入React;
导出默认类SlideItems扩展React.Component{
render(){
返回(
);
}

}
首先向类添加构造函数和状态:

    constructor(props) {
     super(props);

     this.state = {
      image: '',
     }
    }
然后,您可以向图像标记添加
onLoad
属性,如下所示:

<img src={require("./someImg.jpg")} onLoad={this.handleImageLoaded.bind(this)}/>
render() {
 return (
  <div>
   {!this.state.image &&
    <SkeletonComponent/>
   }
   <img src={require("./someImg.jpg")} onLoad={this.handleImageLoaded.bind(this)}/>
  </div>
 );
}
然后在“渲染”中,可以执行以下操作:

<img src={require("./someImg.jpg")} onLoad={this.handleImageLoaded.bind(this)}/>
render() {
 return (
  <div>
   {!this.state.image &&
    <SkeletonComponent/>
   }
   <img src={require("./someImg.jpg")} onLoad={this.handleImageLoaded.bind(this)}/>
  </div>
 );
}
render(){
返回(
{!这个。状态。图像&&
}
);
}

首先向类添加构造函数和状态:

    constructor(props) {
     super(props);

     this.state = {
      image: '',
     }
    }
然后,您可以向图像标记添加
onLoad
属性,如下所示:

<img src={require("./someImg.jpg")} onLoad={this.handleImageLoaded.bind(this)}/>
render() {
 return (
  <div>
   {!this.state.image &&
    <SkeletonComponent/>
   }
   <img src={require("./someImg.jpg")} onLoad={this.handleImageLoaded.bind(this)}/>
  </div>
 );
}
然后在“渲染”中,可以执行以下操作:

<img src={require("./someImg.jpg")} onLoad={this.handleImageLoaded.bind(this)}/>
render() {
 return (
  <div>
   {!this.state.image &&
    <SkeletonComponent/>
   }
   <img src={require("./someImg.jpg")} onLoad={this.handleImageLoaded.bind(this)}/>
  </div>
 );
}
render(){
返回(
{!这个。状态。图像&&
}
);
}