关于react router link problem状态字段名问题



下面是我的代码:

<Link 
state={{"contact":contact}}
to="/admin/contact/Edit"
>
<Button variant="warning"><Pencil/></Button>
</Link>

在目的地中,我可以通过以下编码获得联系人对象:

let data = useLocation();
console.log(data.state.contact);

我希望字段名是动态的。所以,我尝试了以下编码,不幸的是,在目的地,我无法获得联系人对象。

let fieldName="contact"; 
return(
<Link 
state={{ fieldName:contact}}
to="/admin/contact/Edit"
>
<Button variant="warning"><Pencil/></Button>
</Link>
);

我怎样才能使它工作?

如果你的意思是属性键是动态的,那么代码看起来更像下面的:

<Link 
state={{ [fieldName]: contact }}
to="/admin/contact/Edit"
>
<Button variant="warning"><Pencil/></Button>
</Link>

fieldName是一个动态密钥,将在接收组件中以相同的方式使用。

const { state } = useLocation();
const value = state[fieldName];

相关内容

  • 没有找到相关文章

最新更新