我必須在一列中列印 10 個元素,例如 1,2,3 ...,超時時間為 1 秒。但在我的代碼中,我不知道如何回圈列印訊息??。我嘗試過使用innerHTML,但我認為這不是正確的做法。
import { useState } from 'react'
export default function Timeout() {
const [message, setMessage] = useState(1)
while (message <= 10) {
setTimeout(() => {
setMessage(message)
}, 1000)
message
}
return <div>{message}</div>
}
uj5u.com熱心網友回復:
試試這個:
import {useState } from "react";
export default function Timeout() {
const [message, setMessage] = useState([1]);
const Markup = (
<ul>
{message?.map((n) => (
<li>{n}</li>
))}
</ul>
);
setTimeout(() => {
if (message.length <= 9) {
setMessage([...message, message[message.length - 1] 1]);
}
}, 1000);
return <div>{Markup}</div>;
}
uj5u.com熱心網友回復:
試試這個:
import { useState } from 'react'
export default function Timeout() {
const [message, setMessage] = useState([1])
setTimeout(() => {
message.length <= 10 && setMessage((perv)=>[...perv,perv.length 1]);
}, 1000)
return <div>{message.map((item)=>item}</div>
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/468921.html
上一篇:如何隱藏某些路由的某些組件
