背景

最近一直在搞一件事,就是熟悉Blazor,后期需要将Blazor真正运用到项目内。前期做了一些调研,包括但不限于

  • Blazor知识学习
  • 组件库生态预研
  • 与现有SPA框架做比对
  • 与WebForm做比对
  • 自己动手做个演示项目

最终的体验非常不错,功能全面。现有的一些SPA思想Blazor基本都有,现有的WebForm开发思想Blazor基本也包含,甚至提供了混合开发,可以开发PC/移动端应用。

Blazor真正做到了集技术大成于一体,如果我们再给予一些关注度,必成为下一个主流框架!

Blazor目前已经接近10K的star,关注度持续升高。大家也去star吧!

https://github.com/dotnet/blazor

Blazor知识学习

Blazor学习途径还是推荐官方文档,全而不乱,井井有条f,从基础到高级用法,层层递进。

https://docs.microsoft.com/zh-cn/aspnet/core/blazor/?view=aspnetcore-6.0

其次是Github,Github上各种组件库、项目模板,提供了充分的学习,借鉴渠道。可以看到Blazor真正在活跃。

https://github.com/search?q=Blazor

一个汇总库,提供了各个领域Blazor目前现有的一些模板、组件库,非常全面

https://github.com/AdrienTorris/awesome-blazor

组件库预研

Blazor组件库目前看来太多了,比较优秀,关注度比较高的有。

https://github.com/MudBlazor/MudBlazor

https://github.com/ant-design-blazor/ant-design-blazor

https://github.com/dotnetcore/BootstrapBlazor

组件库现在还在持续变多,可供选择性越来越高

与现有SPA比对

Blazor作为一个SPA框架,现有SPA基本上理念一致,MVVM思想中有的Blazor全都有:双向绑定、路由、依赖注入、组件化、事件处理...

也有不少人做过对应分析,十分不错

https://devathon.com/blog/blazor-vs-angular-vs-react-vs-vue/

https://www.telerik.com/blogs/blazor-vs-vue-web-developers

我也做了个简单的翻译

https://www.cnblogs.com/chenyishi/p/16595037.html

与WebForm做比对

为啥要与WebForm做比对?Blazor从开发模式说与WebForm还是有一点相似的,包括页面生命周期,项目结构,中间件...

官方也给我们提供了迁移文档,减小从webform迁移到blazor的难度。

https://docs.microsoft.com/zh-cn/dotnet/architecture/blazor-for-web-forms-developers/introduction

动手实战

光学不练可不行,就用MudBlazor做个Demo,试试Blazor WebAssemebly端和Blazor hybrid混合开发有多爽。

特别是Blazor hybrid混合开发,用HTML思想开发Winform,但逻辑用C#写而不是JS,体验原生性能,大家赶紧动起来吧!

别再听一些人说Blazor不行.NETCore+不行了,自己尝试下就知道多棒了!大家去star吧!https://github.com/dotnet/blazor

最新文章

  1. Android Studio 多个编译环境配置 多渠道打包 APK输出配置
  2. NOSDK--一键打包的实现(二)
  3. 每天一个 Linux 命令(17):whereis 命令
  4. 用户体验学习笔记(工程中发现的PM常犯错误)
  5. readonly与const
  6. js字符串函数之split()join()
  7. 剑指 offer set 3 旋转数组的最小数字
  8. 转: 视频相关的协议族介绍(rtsp, hls, rtmp)
  9. Canny边缘检測算法原理及其VC实现具体解释(一)
  10. WPF和Expression Blend开发实例:一个样式实现的数字输入框
  11. Linq用法笔记
  12. windows系统以及linux系统的优缺点以及区别
  13. flask中需要的基本配置信息
  14. <转>记dynamic的一个小坑 -- RuntimeBinderException:“object”未包含“xxx”的定义
  15. tomcat停止和启动脚本
  16. scrapy工作原理概述
  17. 设置获取cookie,setCookie,getCookie
  18. calico 排错记录 apt-get install telnet
  19. Android-天气预报Demo-JSON数据解析
  20. Druid 配置_StatFilter

热门文章

  1. python3在使用类基础时,遇到错误TypeError: module.**init**() takes at most 2 arguments (3 given)
  2. Citrix Virtual Apps and Desktops 7 2203 LTSR虚拟云桌面单机教程
  3. C#与SQL Server连接时,如何编写连接字符串?
  4. 在 Traefik Proxy 2.5 中使用/开发私有插件(Traefik 官方博客)
  5. csv.reader(f)和f.readlines()、追加数据
  6. 开源流程引擎camunda如何扩展
  7. 开发工具-Typora编辑器下载地址
  8. BUUCTF-你竟然赶我走
  9. jenkins自动触发构建
  10. 图片放在div中低下会出现一条缝