react 方法内返回dom的方法


我有一段写星星等级的代码,后台返回的是一个数字,我要根据数字说明我有几个星,一开始这么写的

   <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标签列表,问题解决,但是原因的话可能不是很清楚, 有明白的大佬欢迎留言解答,谢谢


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM