When using the array field in cartItem and trying to update it, the updateFromArray is called, In the last row in this function, the code generates a new rowId for the item, but the key of this item in the shopping cart did not change, so when trying to get content and find the item after the update, the exception is thrown.
So I think we should remove this line from the updateFromArray function in CartItem class: $this->rowId = $this->generateRowId($this->id, $this->options->all());
Cause when I commented on it the code ran successfully and no other functionality was affected by this change.
When using the array field in cartItem and trying to update it, the updateFromArray is called, In the last row in this function, the code generates a new rowId for the item, but the key of this item in the shopping cart did not change, so when trying to get content and find the item after the update, the exception is thrown.
So I think we should remove this line from the updateFromArray function in CartItem class: $this->rowId = $this->generateRowId($this->id, $this->options->all());
Cause when I commented on it the code ran successfully and no other functionality was affected by this change.