Suspense & Solid app router together will break the suspense fallback if you click on a link where a resource is loading.
The page will be blocked instead until the resource is done loading.
I'm guessing this isn't expected behavior.
Example:
//App.js
export default () => {
const Routes = useRoutes(routes);
<Suspense fallback={<p>Loading Page...</p>}>
<Routes />
</Suspense>
};
//Dashboard.js
export default () => {
const [data] = createResource(() => {
return new Promise((resolve) => {
setTimeout(() => {
resolve('DATA LOADED');
}, 3000);
});
});
return <div>Dashboard Page {data()}</div>;
};