I am using react-table
v7 to generate a table. And now I am trying to make page size pagination dynamically by writing this
<Select
labelId="demo-simple-select-label"
id="demo-simple-select"
value={pageSize}
onChange={(e) => {
setPageSize(Number(e.target.value));
}}
>
{page.length > 10 ? (
<MenuItem id={10} value={10} key={10}>
Show 10
</MenuItem>
) : (
[10, 20].map((pageSize) => (
<MenuItem value={pageSize} key={pageSize}>
Show {pageSize}
</MenuItem>
))
)}
</Select>
If page (rows) length is over 10, it shows two options Show 10
and Show 20
, but when I select Show 20
, dropdown value doesn't show value anymore
And I get a warning in console Material-UI: You have provided an out-of-range value '20' for the select component. Consider providing a value that matches one of the available options or ''. The available values are '10'.
It works fine if I remove ternary operator in {page.length > 10 ? ..
and just put [10,20,30].map() ..