我在一个反应中的项目周围,试图在函数内调用一个钩子,但是它没有更新!
有问题的代码是这个
function ProductSingle(products){
const [product,setProduct] = useState(products.location.state.products)
console.log(product)
const [antal, setAntal] = useState(0)
const dispatch = useDispatch()
const artikelg = useSelector(state => state.products)
const colorGroup = Object.values(artikelg)
.filter(color => color.Artikelgrupp === product.Artikelgrupp)
const colors = colorGroup.map((color) =>{
console.log(color)
return (
<>
<Cor a1={color.färg} a2={color.färg} a3={color.färg} onClick={color => setProduct(color)} style={{cursor: 'pointer'}}/>
</>
)}
)
但是setProduct不会为映射对象更新。有什么想法吗?
答案 0 :(得分:0)
尝试仅使用onClick={() => setProduct(color)}
onClick={color => setProduct(color)}
确实无法做到这一点,因为onClick
参加了比赛。