当我将href设为字符串时,链接可以工作,但当我将href设为对象时,链接就不工作了。当我将鼠标悬停在链接上时,我看到了带有正确querystring的链接。但它会将我带到第一页。
// ProdCard
type ProdProps = Pick<CardProps, 'background' | 'className'> & {
name: string;
prodNumber?: number;
id: string;
};
export const ProdCard = ({ className, background, name, id, prodNumber = 0 }: ProdProps) => (
<div className={className}>
<Link
href={{
pathname: '/search',
query: { page: 1, title: name, startDate,endDate, id },
}}
passHref
>
<a>
<Card className={className} background={background}>
<div>{name}</div>
<div>{prodNumber}</div>
</Card>
</a>
</Link>
</div>
);
代码中的链接不起作用。但如果我将其更改为
href={`/search?title=${name}&startDate=${startDate}&endDate=${endDate}&prodId=${id}`}
它将工作。当一个href被设置为对象时,我如何使它工作?
1条答案
按热度按时间w8f9ii691#
这应该可以正常工作,很可能是你要重定向到的页面有问题。从你发布的内容来看,我没有看到startDate和endDate的定义。如果缺少值,你是否要重定向到第一个页面?
我用以下代码重新创建了它:
Hovered link