<ListItem
title="Language"
smartSelect
smartSelectParams={{ openIn: 'popover', routableModals: false, closeOnSelect: true }}
onChange={event => {
updateLocale(event.target.value as Locale);
}}
>
onChange
never seems to fire.
Also, I tried putting smartSelectParams={{on:{closed:()=>...}}}
in there, but I get this:
Clearly, it should check first:
if (!ss.destroyed) {
ss.modal.destroy();
delete ss.modal;
}
onChange
event for ListItem is for when it is used as a Radio or Checkbox item. With smart select, it should be done as:
<ListItem
title="Language"
smartSelect
smartSelectParams={{
openIn: 'popover',
routableModals: false,
closeOnSelect: true,
on: {
change(ss, value) {
console.log(value)
}
}
}}
>
Or you can attach change event handler directly to inner <select>
:
<ListItem
title="Language"
smartSelect
smartSelectParams={{
openIn: 'popover',
routableModals: false,
closeOnSelect: true,
}}
>
<select onChange={...}>
This should be fixed in todays 4.5.2 update