链接未在 React 管理员的列表中打开 - 改为进行编辑



我有一个活动资源;id字段的每个活动链接到url的独立页面,属于该活动。(我还是不知道该怎么做)。

我使用自定义字段

import { useRecordContext, useGetOne } from 'react-admin';
import { Link } from 'react-router-dom';
export default  () => {
const campaign = useRecordContext();
const { data, isLoading } = useGetOne('campaign', { id: campaign.campaign_id });
const campaignUrlsPage = `/campaign/${campaign.id}/urls/`;
return /*isLoading ? null : */ <Link to={campaignUrlsPage}>{campaign.id}</Link>;
};

为什么我注释掉isLoading? 这很奇怪,但它总是正确的,毕竟我不会那样注意到任何人工制品。

链接显示在相应的单元格中,它们实际上是锚标记,但是单击它们会导致记录编辑。是的,我有rowClick="edit">我真的很需要此外,我在网格中有UrlField,点击它首先显示记录编辑页面,但接下来它指向URL。这个问题能解决吗?

提前感谢。

为了支持rowClick="edit",每个数据网格行都有一个click处理程序。

如果将按钮放在数据网格中,当用户单击按钮时,单击甚至会向下传播到数据网格行,并触发行单击事件处理程序。

所以你必须在你的链接中停止事件传播:

export default  () => {
const campaign = useRecordContext();
const { data, isLoading } = useGetOne('campaign', { id: campaign.campaign_id });
const campaignUrlsPage = `/campaign/${campaign.id}/urls/`;
return isLoading ? null : (
<Link 
to={campaignUrlsPage}
onClick={e => e.stopPropagation()}
>
{campaign.id}
</Link>
);
};

相关内容

  • 没有找到相关文章

最新更新