[英]array.map() is returning elements all together in React JS
const test = () = {
const array = ['hello', 'myNameIs']
return (
{
array.map((arr) => (
<div>{arr}</div>
<button>Edit</button>
)
}
)
}
This.map() 方法沒有按我的預期工作。
使用代碼,我試圖得到
hello [button]
myNameIs [button]
像這樣。
但是當我實際渲染代碼時,我得到了
hello MynameIs [button]
在這種情況下,如何更改 .map() 語句?
我應該使用索引嗎?
看看下面的例子,我幾乎是用你的代碼創建的,它按照你的預期工作,沒有問題。
function App() { const array = ['hello', 'myNameIs']; return array.map(item => ( <div key={item}> {item} <button>Edit</button> </div> )); } ReactDOM.render(<App />, document.getElementById("root"));
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script> <div id="root"></div>
在div
標簽內創建按鈕
array.map((arr) => (
<div>{arr} <button>Edit</button></div>
)
const test = () = {
const array = ['hello', 'myNameIs']
return (
{array.map((item,key) => (
<div key={item}>{item}</div><button>Edit</button>
)})
}
您沒有使用正確的箭頭 function 語法它應該像const test = ()=>{}
React 組件 JSX 應該返回一個父容器嘗試將其包裝為:
const Test = () => { const array = ["hello", "myNameIs"]; return ( <> {array.map((arr) => { return ( <> <div>{arr}</div> <button>Edit</button> </> ); })} </> ) }
這是工作代碼沙箱鏈接https://codesandbox.io/s/kind-easley-jxiei?file=/src/App.js:57-336
我希望它有幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.