.NET5 Blazor是否可以大规模正式使用?

今天在微信群讨论了很多Blazor是否可以正常用的问题。大家争的面红耳赤的。

于是趁着无聊,就水了这么一篇文。

还记得Blazor还在预览版的时候,我就开始关注Blazor了。

那会儿调试Blazor还得在浏览器地址栏输入一堆命令,调试都贼不方便。打包出来也是很大,浏览器也很卡顿。

可以从以下几个方面来说一下为什么我认为Blazor可以在小规模的正式环境中使用。以及哪些地方不太适用Blazor

1.包大小

但是如今几年过去了。Blazor从一开始的一堆好几M的库,到现在5.0版本

.NET 5下的Blazor是否可以大规模正式使用?

Hello World的包大小已经缩减到一百多kb左右了。当然现在依然没法和Vue NG这样的能缩减到50kb以下的框架来比。(这点大小我认为不影响框架加载速度)

2.功能对比

一个优秀的SPA框架,各方面也要优秀。我们可以使用Blazor对比一下Vue.js的功能。

Vue.jsBlazor
模板支持支持
状态管理支持不支持
动画组件支持不支持
路由组件支持支持
组件库数量
组件库质量
使用人数
服务器渲染支持支持
插件

以上对比来自己我个人的主观使用。

.NET 5.0让我觉得眼前一亮的是提供一个虚拟滚动组件:Virtualize 这个功能Vue.js至今没有官方实现。但是Blazor居然提供了。这里要给微软点个赞。

3.适用场景以及不适用的场景

从Blazor的文档来看,Blazor基本没有对老旧浏览器有一个良好的支持。

.NET 5下的Blazor是否可以大规模正式使用?

浏览器环境

如果有需要兼容IE10或者11+版本的需求,不要选择Blazor。不挑选浏览器环境的话,可以选择Blazor。移动端 TO b项目可以选择Blazor。 To c慎重(毕竟to c客户不能要求别人换浏览器)

CSS功力

为什么我会有提出这个点呢?因为Blazor的UI组件库质量一言难尽。

  • Element-blazor处于断更状态。几个月没更新了。
  • Ant-blazor的官网都随时挂掉。组件也贼卡顿。
  • 唯一感觉质量还行的BootStrapBlazor,UI风格有点太老。需要自己调整CSS。(如果对界面要求不高的,可以使用。)


用Blazor的需要什么特殊功能的组件的话(如颜色选择器,Cron选择器),一般找不到合适的第三方。需要自己动手解决写组件的问题。

很多长期做纯后端工作的老铁们都觉得写CSS很费劲。实际上并不是,大约在去年7月之前,我也是一个CSS小菜鸡。但是去年不知道脑子抽什么风。想用自己弄一套组件库出来。于是重温CSS,闲暇时间也撸了几十个感觉还行的组件库(后期会开源,基于Vue.js写的)

总结

如果你正在做一个内部使用的简单后台系统,那完全没问题。如果你要做一个很复杂且要长期维护的项目,建议等Blazor的进一步优化。

以上是 .NET5 Blazor是否可以大规模正式使用? 的全部内容, 来源链接: utcz.com/a/120724.html

回到顶部