我有以下代碼,目的是在另一個組件中重用它,并根據我的物件的 id 和我的 API 回傳給出不同的鏈接。
問題是,我如何使用地圖功能在螢屏上多次再現同一個按鈕。我想知道我怎么只得到一個按鈕。我可以以某種方式在該地圖中使用 indexOf 嗎?其他一切都很好
const ButtonGroup = (linksReturn) => {
return linksReturn.map((urlAdress, index) => (
<div key={index}>
<button
target="_blank"
href={urlAdress["detailsUrl"]}
>
Acess Link
</button>
</div>
));
};
const PreviewActions = ({ linksReturn }) => {
return <div>{ButtonGroup(linksReturn)}</div>;
};
export default PreviewActions;
這是我重用按鈕的代碼部分
import { useEffect } from 'react';
import { useParams } from 'react-router-dom';
import PreviewActions from './PreviewActions';
// ** Store & Actions
import { getInfo } from '../store/actions/index';
import { useDispatch, useSelector } from 'react-redux';
const LicitacaoPreview = () => {
const dispatch = useDispatch();
const store = useSelector((state) => state.allInfo);
const { id } = useParams();
useEffect(() => {
dispatch(getInfo(id));
}, [dispatch]);
return typeof store.lotesData === 'object' ? (
<div>
<PreviewActions
id={id}
linksReturn={store.infoData}
/>
</div>
)
};
export default LicitacaoPreview;
uj5u.com熱心網友回復:
Array.prototype.map() 不是這樣作業的,它呼叫作為引數傳入的每個陣列元素的函式并回傳結果陣列。
更好的方法是使用Array.prototype.slice()回傳原始陣列的特定部分,然后map()在其上使用
const ButtonGroup = (linksReturn) => {
const newArr = linksReturn.slice(startindex, endindex); // replace with your index appropriately
return newArr.map((urlAdress, index) => (
<div key={index}>
<button
target="_blank"
href={urlAdress["detailsUrl"]}
>
Acess Link
</button>
</div>
));
};
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/327043.html
標籤:javascript 反应 字典 for循环 指数
上一篇:從未使用過宣告-但它是?
