Я создаю приложение, где вы можете сделать гамбургер.Единственная проблема, когда я нажимаю, например: Добавить салат, он добавит div с className Salad только один раз.Я не могу добавить салат дважды.
Я пытался добавить ключ к div, чтобы div отличался, но ключевой элемент увеличится только на один, и это не даст мне больше. 's.
import React, { Component } from 'react';
import '../Hamburger/Hamburger.css';
class Hamburger extends Component {
componentDidUpdate() {
this.render();
}
renderSwitch(aantal, type) {
if (aantal === 0) {
return null;
}
let ingredient = null;
switch (type) {
case ("salad"):
ingredient = <div className="Salad">rr</div>;
break;
case ("bacon"):
ingredient = <div className="Bacon">rr</div>;
break;
case ("cheese"):
ingredient = <div className="Cheese">rr</div>;
break;
case ("meat"):
ingredient = <div className="Meat">rr</div>;
break;
default:
return null;
}
return ingredient;
}
render() {
return (
<div style={style}>
<div style={{ color: "transparent" }}>f</div>
<div className="BreadTop">r</div>
Это относится к исходному состоянию, см. состояние ниже
{this.props.artikelen.map(ctrl => (
this.renderSwitch(ctrl.aantal, ctrl.type)
))}
<div className="BreadBottom">r</div>
</div>
)
}
}
export default Hamburger
{* THIS.PROPS.ARTIKELEN = *}
state = {
artikelen: [
{ naam: 'Salad', type: 'salad', aantal: 0 },
{ naam: 'Bacon', type: 'bacon', aantal: 0 },
{ naam: 'Cheese', type: 'cheese', aantal: 0 },
{ naam: 'Meat', type: 'meat', aantal: 0 },
]
}
Я ожидаю (2 клика, чтобы добавить салат):
<div className="Salad"></div>
<div className="Salad"></div>
Ноэто только даст мне:
<div className="Salad"></div>