我们在上一章中说到Blazor的WASM和Server模式各有优缺点。在.net8之前,这两种模式是独立的,你的项目只能选其中之一。但是.net8出现了一种叫自动模式,官方解释是:开发者在创建 Blazor 项目时不再显式区分是 Blazor Server 还是 Blazor WebAssembly。自动模式通过在运行时根据实际需要选择部署模式(Server 或 WebAssembly),大大简化了开发体验。这样解释就给了大家一个假象,我创建项目的时侯选择自动模式,然后我全部按以前server模式写代码,这样就能节约很多的时间。其实这样是可以的,blazor允许你这样做。但是我不推荐使用这种办法,我认为还是应该严格按照以前WASM那种办法来写代码,即前后端分离,通过api连接。这样你的代码逻辑会非常清楚,而且万一你不想用blazor了,把前端换掉,后端不用重新写代码了。
我理解的blazor自动模式:组件的初始加载将通过Server进行,使其超快。但在后台,Blazor 会将必要的资源下载到客户端,以便在下次加载时可以使用 WebAssembly 模式完成。这是一个很完美的模式,它解决了一直以来WebAssembly 模式首次加载超级慢的问题。就是说资源没下载完成的时侯,用服务端渲染,加载完成以后用WebAssembly。怎么产,伙伴们,是不是想试试.net8的blazor了?