Vaadin 23: BigDecimalField got JS error when set a value

MacOS, Vaadin 23.3, Java 17, Chrome browser, dev mode.

My code below is to set value to BigDecimalField.
`
import com.vaadin.flow.component.textfield.BigDecimalField;
import java.math.BigDecimal;

BigDecimalField numberField = new BigDecimalField();
numberField.addValueChangeListener(event → {
numberField.setValue(new BigDecimal(“2.5”));
});`

And I get error message in browser below. There is NO any error or exception in backend.

Uncaught TypeError: Cannot set properties of undefined (setting 'value') (http://localhost:9090/VAADIN/generated/jar-resources/FlowClient.js:207:16)

FlowClient.js:207 Uncaught TypeError: Cannot set properties of undefined (setting 'value') at BigDecimalFieldElement.eval (eval at Gu (FlowClient.js:1090:101), <anonymous>:3:46) at Object.eval (eval at Gu (FlowClient.js:1090:101), <anonymous>:3:61) at Gu (FlowClient.js:1090:166) at Fu (FlowClient.js:1039:277) at Du (FlowClient.js:643:57) at hs (FlowClient.js:550:18) at Es.Fs [as hb] (FlowClient.js:1100:21583) at yC (FlowClient.js:1008:221) at ks (FlowClient.js:1096:303) at As.Bs [as I] (FlowClient.js:1100:21349) at rl (FlowClient.js:459:29) at cs (FlowClient.js:1098:1159) at ds (FlowClient.js:1079:403) at gq.nq [as yb] (FlowClient.js:1100:17522) at Object.<anonymous> (FlowClient.js:1074:135) at Eb (FlowClient.js:482:29) at Hb (FlowClient.js:959:56) at Object.onMessage (FlowClient.js:676:46) at _f (vaadinPush.js?v=23.3.12:2815:31) at _invokeFunction (vaadinPush.js?v=23.3.12:2804:17) at _invokeCallback (vaadinPush.js?v=23.3.12:2939:21) at _websocket.onmessage (vaadinPush.js?v=23.3.12:1473:29)

@quick-witted-echidna
image.png

image.png

Vaadin 23: BigDecimalField got JS error when set a value

Please make a bug ticket: Sign in to GitHub · GitHub

but in addition, I have to say it looks weird to update a field’s value in a value change listener; it should cause an endless loop. But the error message should be more clear, which I do think counts as a bug.

actually we don’t set value directly on listener.

grid.addComponentColumn(this::getTotalWorkingDay) .setHeader(myMessageManager .getMessageCustom("CompanyPayslipConfigView.grid.getTotalWorkingDay")) .setResizable(true).setAutoWidth(true);
image.png

Okay, well then your original example was completely different

https://github.com/vaadin/flow-components/issues/5169

Try to update your example so that it can be reproduced without any additional code

now there are a lot of omissions

ok, let me try on demo proj