reactjs - 无状态组件中悬停时的文本更改
问题描述
我有一个图标列表。悬停时,我试图显示相应的文本。有没有办法用无状态组件来做到这一点?
const Socialbar = (props) => {
let spanText;
function socialName(sName) {
spanText = sName;
}
return (
<div>
<i><a onMouseEnter={socialName('Instagram')} onMouseExit={socialName('')} href=""><FontAwesomeIcon="faInstagram" /></a></i>
<h2>{spanText}</h2>
</div>
);
}
解决方案
import React, {useState} from 'react';
const Socialbar = (props) => {
const [spanText, setSpanText] = useState('');
function socialName(sName) {
if (sName !== spanText) {
setSpanText(sName);
}
}
return (
<div>
<i><a onMouseEnter={() => socialName('Instagram')} onMouseLeave={() => socialName('')} href=""><FontAwesomeIcon="faInstagram" /></a></i>
<h2>{spanText}</h2>
</div>
);
}
推荐阅读
- express - Oauth2 Google 身份验证流程 - Next.JS / Express
- javascript - 使用 DataTables 在服务器端模式下具有单独搜索输入的多个表
- html - 如何使用 [ngClass] 或 customClass 更改 tabset nav-pills 背景颜色
- html - 如何从 HTML 执行 jar 文件?
- c# - 如何使用 MediaPlayerElement 将 ui 同步到全屏或紧凑模式
- sql-server - SQL Server - 在“async_network_io”状态下查询取消
- ios - Firebase子查询在删除一个键然后添加回来后出现零
- python - 使用 Python Pandas 将(美国)负数转换为 -Europeans
- node.js - 如何从 REACT JS 获取 JSON 以在 NODE js 中实现
- django - 我的两个自定义用户模型不能登录失败