Just checked stackblitz and it looks like there is a naming conflict between your own QList component and Quasar's built-in "q-list" component. Vue treats component names case-insensitively, which is why it interprets "q-list" and "QList" as the same component.
To resolve this issue, you can try renaming your QList component to another name that does not conflict with the Quasar component, such as "MyQList", or importing the Quasar "q-list" component using an alias.
From 'quasar' import { Qlist as QuasarList }