Почему переменная val внутри onSelectionChange не изменилась соответственно?
https://codesandbox.io/s/bold-smoke-h3b0w?file= / src / index. js
Я думаю, что обратный вызов генерируется всякий раз, когда есть изменение в val.