javascript - 如何从功能组件调用调度程序?
问题描述
我有这个功能组件。我想在单击 .delete 时调用调度程序。我已经做了一个我期望在onClick上做的例子:
import React from 'react'
import { Link } from 'react-router-dom'
export default function FeedItem(article) {
return (
<div className="feed-item flex-column" key={article.id}>
<Link to={`/posts/${article.id}`} className="title">{article.title}</Link>
<div className="delete" onClick={() => dispatch({someType})}>X</div>
<p>{article.body}</p>
<Link to={`/edit`} params={{postid: article.id}} className="edit">edit</Link>
</div>
)
}
应该怎么做才对?
解决方案
您可以使用useDispatch
钩子,它为您提供对该dispatch
函数的引用
import { useDispatch } from 'react-redux';
export default function FeedItem(article) {
const dispatch = useDispatch();
return (
<div className="feed-item flex-column" key={article.id}>
<Link to={`/posts/${article.id}`} className="title">{article.title}</Link>
<div className="delete" onClick={() => dispatch({ someType })}>X</div>
<p>{article.body}</p>
<Link to={`/edit`} params={{ postid: article.id }} className="edit">edit</Link>
</div>
);
}
推荐阅读
- single-sign-on - Edge Chromium 不会将 SAML 数据 http 发布到 IEMode 用户访问 URL
- python - 检查 Discord 机器人是否在线
- cmake - 使用正确的包含目录来构建 LLVM 通行证
- java - 如何捕获和传播通配符类型参数?
- javascript - 单击时手风琴滚动到顶部?
- discord.py - discord.py 创建一个机器人,当特定用户加入语音频道时,该机器人会在文本频道中发送专门的预设消息
- qt - 如何在qmake中指定repc的输出路径?
- django - Django,当我调用扩展模板时丢失了模板的变量
- javascript - 我的幻灯片图像在彼此之上????HTML,JS,CSS
- reactjs - 如何修复 npm ERR!代码 ELIFECYCLE 退出状态 130