(反应)useParams获取ID并从列表中显示

时间:2020-09-05 02:38:45

标签: reactjs undefined

使用useParams从页面获取值,我有ID,但是我试图显示具有该特定ID的shop数组

const shopContext = useContext(ShopContext);
const { shop } = shopContext;
const { id } = useParams();
{shop.map(sho => (
                    <ShopBanner
                        key={sho.id}
                        // id={id}
                        shop={shop.find(sh => sh.id === id)}
                    />
                ))}

来自ShopBanner.js

function ShopBanner({ shop }) {
    const { name, image, description, phone, address, short } = shop;

向我显示错误“ TypeError:商店未定义”

2 个答案:

答案 0 :(得分:0)

过滤器功能有错字。

shop={shop.find(sho => sho.id === id)

答案 1 :(得分:0)

事实证明,id是一个字符串,所以我不得不将其转换为整数,并且现在可以正常工作