Вам необходимо вернуть один объект Javascript HTML / Jsx Tag, содержащий все содержимое.
С вашей действительной функцией, я полагаю, вы возвращаете массив элементов с room.length divs,будучи этим элементом room .
Попробуйте вернуть только один объект, который имеет все элементы div, например:
{ var renderedDivs = [];
renderedDivs = this.state.rooms.map( room => {
return (
<div className="room-row" key={room.key}>
<button id={"demo-menu-lower-left" + room.key} className="mdl-button mdl-js-button mdl-button--icon">
<i className="material-icons">more_vert</i>
</button>
<ul className="mdl-menu mdl-menu--bottom-left mdl-js-menu mdl-js-ripple-effect" htmlFor={"demo-menu-lower-left" + room.key}>
<li className="mdl-menu__item">Some Action</li>
<li className="mdl-menu__item mdl-menu__item--full-bleed-divider">Another Action</li>
<li disabled className="mdl-menu__item">Disabled Action</li>
<li className="mdl-menu__item">Yet Another Action</li>
</ul>
</div>
)
return renderedDivs
}
Или другоеэто может сработать:
{return (this.state.rooms.map( room => {
return (
<div className="room-row" key={room.key}>
<button id={"demo-menu-lower-left" + room.key} className="mdl-button mdl-js-button mdl-button--icon">
<i className="material-icons">more_vert</i>
</button>
<ul className="mdl-menu mdl-menu--bottom-left mdl-js-menu mdl-js-ripple-effect" htmlFor={"demo-menu-lower-left" + room.key}>
<li className="mdl-menu__item">Some Action</li>
<li className="mdl-menu__item mdl-menu__item--full-bleed-divider">Another Action</li>
<li disabled className="mdl-menu__item">Disabled Action</li>
<li className="mdl-menu__item">Yet Another Action</li>
</ul>
</div>
))}