From what I understand, React lazy will split your bundle into multiple files. Let's say I use lazy loading with React.router. If our server is set up to send the whole bundle through a GET request, how does React.router incrementally get the files from the server? Wouldn't it have to receive this whole bundle regardless?
React router runs on server-side; server does not "send" resources except when the client asks for it. All that lazy loading does is spread out the client's request to the server. The server cannot send the whole bundle through a GET request because, eg, if the client requested the script for one page, and you sent the entire bundle, the entire bundle would run multiple times and everything would be a mess.
TLDR code splitting runs on the client, not the server.