为了账号安全,请及时绑定邮箱和手机立即绑定

创建动态类名,然后使用 Reactjs 递增值

创建动态类名,然后使用 Reactjs 递增值

慕标琳琳 2021-10-21 13:25:52
我有一个呈现列表的组件。每个项目都有一个类名。我的问题是如何动态添加类名,后跟递增值。function Menu(props) {    const list = ['list1', 'list2', 'list3']    const menuitems = list.map((list, index) => {        return <li className="menuitem" key={index}>{list}</li>    })    return (        <ul>{menuitems}</ul>    )}在 DOM 中,它应该是这样的:<ul>    <list class="menuitem item-1">list1</li>    <list class="menuitem item-2">list2</li>    <list class="menuitem item-3">list3</li></ul>
查看完整描述

3 回答

?
慕仙森

TA贡献1827条经验 获得超8个赞

这很简单 =)


function Menu(props) {

    const list = ['list1', 'list2', 'list3']

    const menuitems = list.map((list, index) => {

        return <li className={`menuitem item-${index + 1}`} key={index}>{list}</li>

    })


    return (

        <ul>{menuitems}</ul>

    )

}

它使用 JSX 表达式{ - expression code lives here - }。您可以在大括号之间放置任何有效的JS 表达式。


查看完整回答
反对 回复 2021-10-21
?
呼啦一阵风

TA贡献1802条经验 获得超6个赞

尝试这个 :


function Menu(props = null) {

    const list = ['list1', 'list2', 'list3']

    const menuitems = list.map((list, index) => {

        return `<li className="menuitem item-${index + 1}" key="${index}">${list}</li>`

    });


    return (

        `<ul>${menuitems.join(" ")}</ul>`

    )

}


查看完整回答
反对 回复 2021-10-21
?
慕斯王

TA贡献1864条经验 获得超2个赞

您可以使用名为classnames 的包或:

<li className={`menuitem-${index}`} key={index}>{list}</li>


查看完整回答
反对 回复 2021-10-21
  • 3 回答
  • 0 关注
  • 170 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信