I'm using for-each function inside my drop-down component. dropDwonItemArray
comes as an object with key and value.When I logs it is like below
What I nedd to do inside the drop-down is iterate through this object and pass the values as DropDownItems.I used for -each.Though it console.logs the value, the value doesn't passes to DropDownItem. Can you explain what is the reason here?
DropDown.js
import React from 'react';
import { PropTypes } from 'prop-types';
import {
DropdownToggle,
DropdownMenu,
UncontrolledDropdown,
DropdownItem
} from 'reactstrap';
import * as Icon from 'react-bootstrap-icons';
import './DropDown.scss';
/**
* This is a reusable dropdown
* onClick function and dropdown items come as props
*/
class DropDown extends React.Component {
render() {
const { dropDwonItemArray, text, onClick } = this.props;
const dropdownItems = Object.entries(dropDwonItemArray).forEach(
([key, value]) => {
return (
<DropdownItem>
<div className="dropdown-items" onClick={onClick}>
{value}
{console.log('Test', value)}
</div>
</DropdownItem>
);
}
);
return (
<div>
<UncontrolledDropdown className="dropdown-wrapper text p4">
<DropdownToggle className="select-dropdown">
<div className="select-text text p4">{text}</div>
<Icon.CaretDownFill />
</DropdownToggle>
<DropdownMenu name="test">{dropdownItems}</DropdownMenu>
</UncontrolledDropdown>
</div>
);
}
}
DropDown.propTypes = {
text: PropTypes.string,
onClick: PropTypes.func,
menuItemArray: PropTypes.array
};
export default DropDown;