On a bad connection, I'd pick a react SPA with a slow upstart over a classic server-side rendered one any day all things being equal.
With the react app there's a chance I'll have the js already cached and I'm only fetching the data. With the SSR I'll probably be fetching data and view continuously.