javascript React中的onLoad事件未按预期运行

ehxuflar  于 2022-10-30  发布在  Java
关注(0)|答案(2)|浏览(213)

我有以下组件:

const testLog = () => {   
    console.log('aaa - test') ;
}

const MyComponent = () => (
    <img onLoad={() => testLog()} />    
);

然后在主应用中引用该组件:

<MyComponent />

我可以看到组件确实出现在屏幕上-我可以看到图像组件,但是,我遇到的问题是日志消息从未触发。
起初,我想我可能需要绑定它,所以尝试了以下方法:

const MyComponent = () => (
    <img onLoad={() => this.testLog.bind(this)} />    
);

但它只是告诉我没有使用testLog

mnowg1ta

mnowg1ta1#

为了触发onLoad,您需要img具有src。查看您提供的代码,img标记没有要加载的内容。

ktecyv1j

ktecyv1j2#

尝试使用useEffect挂钩,请https://reactjs.org/docs/hooks-effect.html

useEffect(()=>{
  // TODO: your code here
  this.testLog.bind(this)
},[]);

相关问题