我有一段寫星星等級的代碼,后台返回的是一個數字,我要根據數字說明我有幾個星,一開始這么寫的
<ul className='star-list'> {(() => { let dom='' if (item.startLevel) { for (let i = 0; i < item.startLevel; i++) { dom+=(<li className='star-item' key={i}></li>) } } return dom })()} </ul>
但這樣的寫法會變成返回一個[object,object],[object,object],[object,object],[object,object]....的字符串,正確的寫法是:
<ul className='star-list'> {(() => { let dom=[] if (item.startLevel) { for (let i = 0; i < item.startLevel; i++) { dom.push(<li className='star-item' key={i}></li>) } } return dom })()} </ul>
通過返回一個數組的方式他會自動解析成我們需要的dom標簽列表,問題解決,但是原因的話可能不是很清楚, 有明白的大佬歡迎留言解答,謝謝