javascript - 如何在React.js中以异步方式加载悬停效果的图像?

标签 javascript ajax reactjs

您可能已经见过这种效果。示例 - https://codepen.io/anon/pen/GEmOQy

但我需要在 React 中实现同样的方式。我知道我可以使用ajax的componentDidMount方法,但问题是如何在悬停时显示响应。

我没有使用 React 实现悬停的练习,就像我在使用 :hover 的纯 CSS 方法中所做的那样。

所以欢迎任何解决方案。

最佳答案

这是一个非常简单的问题,并且有很多可能性。我所能给出的只是如何做到这一点的基本框架。
定义一个 ImageCard 组件,您可以在其 componentDidMount 中执行 API 调用。然后在您的父组件(按钮所在的组件)上,存储一个用于管理是否显示卡片的 state 键:

class MyComponent extends React.Component {
  constructor() {
    super();
    this.state = {
      showCard: false
    };
  }
  render () {
    return (
      <div>
        {
          this.state.showCard &&
        <ImageCard/>
        }
        <button
          onMouseEnter={() => this.setState({ showCard: true })}
          onMouseLeave={() => this.setState({ showCard: false })}
          >Hover Me!</button>
      </div>
    )
  }
}

关于javascript - 如何在React.js中以异步方式加载悬停效果的图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47786317/

相关文章:

javascript - Bootstrap 单选按钮切换问题

javascript - 当值超过最大值和最小值时更改域

Javascript - 无法解析通过 PHP 发送的 JSON 或字符串

javascript - 从 jQuery ajax 获取数据

javascript - 在 Javascript 中访问数组

html - 生成定制的静态 swagger 文档

javascript - 来自react-router-dom的BrowserRouter不渲染组件

javascript - 在 native react 中更新/更改状态对象的最佳方法?

javascript - 如何验证请求是否来自特定的 Web 应用程序

javascript - View 和 Controller 之间的绑定(bind)不起作用