上篇文章讲了Blazor的两种模式的区别及各自的使用场景,本篇就开始学习WebAssembly模式,本篇主要学习的是创建项目及认识项目结构:

  1. 创建项目

选择Blazor应用

选择WebAssemblyApp,并且勾选PWA,之后的文章会说到PWA

创建成功后,运行项目,成功运行

  1. 认识项目结构

项目结构

创建好的项目分成以上几个区域,wwwroot,Pages,Shared,_Imports.razor,App.razor,Program,以下分别介绍下各个部分,这里是我个人的对这个项目的理解,有不对的欢迎指正。

Program

项目运行开始是从Program进来的,builder.RootComponents.Add<App>("app");这里的‘App’类 对应了App.Razor, 括号里的app 对应了 wwwroot下index.html里的<app>标签。名称要一致。index.html算是整个单页应用最大的母版。

index.html

日常使用的通用的js都写在这个index.html里

App.Razor

App.Razor里主要看一个地方就行,就是默认Layout的设置,这里默认的是MainLayout,如果Pages里的Razor 不做特殊声明的话,就是默认使用这个。如果想使用别的,就可以代码头部加@layout LoginLayout (这里是举例,不一定叫LoginLayout)

@page 代表的单页应用里的页面路径

从代码中可以看到大部分之前用js来做的这里用到了C#来写了。比如这里的获取天气信息json数据的,这里用了HttpClient读取。代码很清晰,对于.net开发人员确实是很友好。

_imports.razor

_imports.razor里放了一些引用的命名空间。

以上来块,整个页面的结构是index.html->Layout->Page 一层层嵌套而成。页面之间跳转使用page里的@page来设置路径。不同页面想用不同的layout可以单独设置,很多逻辑可以用C#来实现。这是默认项目给到的东西,下篇将会结合实际项目登录功能讲一个结合js使用的功能。

一起学Blazor WebAssembly 开发(2)的更多相关文章

  1. 一起学Blazor WebAssembly 开发(1)

    最近blazor的WebAssembly 正式版出来了,正好手头有一个项目采用的前后端分离模式做的,后端用的abp vnext(.net core 的一个很著名的框架)框架开发的,其实前端之前考虑的使 ...

  2. 一起学Blazor WebAssembly 开发(3)

    接着上篇,本篇开始讲下实现登录窗口,先看下大概的效果图: 打开的效果,没有美工美化 点登录校验得到不能为空 我在做blazor时用到了一个ui框架,这个框架名叫Ant Design blazor(ht ...

  3. 从零开始一起学Blazor WebAssembly 开发(4)

    登录模块基本完成了,登录主要用了以下几个点: 1.后端采用的Abp Vnext 框架,这个框架自带的IdentityServer4用户角色权限控制,这个框架登录研究了好一阵子,有几个坑这里说下: 1) ...

  4. Blazor Webassembly多标签页开发

    最近准备用Blazor Webassembly做后台开发要用到多标签页,找了半天发现绝大多数都是Blazor Server的多标签没有Webassembly.没办法只能自己想办法造轮子了. 查了许多资 ...

  5. 浏览器中的 .Net Core —— Blazor WebAssembly 初体验

    前言 在两年多以前就听闻 Blazor 框架,是 .Net 之父的业余实验性项目,其目的是探索 .Net 与 WebAssembly 的兼容性和应用前景.现在这个项目已经正式成为 Asp.Net Co ...

  6. ASP.NET Core Blazor 初探之 Blazor WebAssembly

    最近Blazor热度很高,传说马上就要发布正式版了,做为微软脑残粉,赶紧也来凑个热闹,学习一下. Blazor Blazor是微软在ASP.NET Core框架下开发的一种全新的Web开发框架.Bla ...

  7. 通过 Serverless 加速 Blazor WebAssembly

    Blazor ❤ Serverless 我正在开发 Ant Design 的 Blazor 版本,预览页面部署在 Github Pages 上,但是加载速度很不理想,往往需要 1 分钟多钟才完成. 项 ...

  8. Blazor WebAssembly 3.2.0 Preview 4 如期发布

    ASP.NET团队如期3.16在官方博客发布了 Blazor WebAssembly 3.2.0 Preview 4:https://devblogs.microsoft.com/aspnet/bla ...

  9. Blazor WebAssembly 3.2.0 已在塔架就位 将发射新一代前端SPA框架

    最美人间四月天,春光不负赶路人.在充满无限希望的明媚春天里,一路风雨兼程的.NET团队正奋力实现新的突破. 根据计划,新一代基于WebAssembly 技术研发的前端SPA框架Blazor 将于5月1 ...

随机推荐

  1. git 远程分支和tag标签的操作

    git远程分支操作:1.创建远程分支git push --set-upstream origin develop:develop2在服务器创建远程分支devlop2,让本地的develop分支和dev ...

  2. DDoS压力测试工具t50

    site: https://sourceforge.net/projects/t50/ 例子:t50 192.168.1.1 --flood--protocol T50|TCP|UDP|ICMP--t ...

  3. $.post 参数定义

    //重置密码 function ResetPassword(id, accounts) { //alert("重置密码id-" + id + "-" + acc ...

  4. JVM垃圾回收概述

    垃圾回收概述 什么是垃圾 什么是垃圾( Garbage) 呢? 垃圾是指在运行程序中没有任何指针指向的对象,这个对象就是需要被回收的垃圾. 如果不及时对内存中的垃圾进行清理,那么,这些垃圾对象所占的内 ...

  5. Windows7 PowerShell 2.0升级到 PowerShell 5.1

    Windows7 sp1内置的PowerShell的版本是v2.0,现需要将其升级到v5.1,过程中有一个环节需要引起注意,为了以后查阅的方便,现将其记录下来. 1 查看PowerShell版本 Wi ...

  6. java语言基础(八)_接口_多态

    接口 1. 接口定义的基本格式 接口就是多个类的公共规范,是一种引用数据类型,最重要的内容就是其中的:抽象方法. 如何定义一个接口的格式: public interface 接口名称 { // 接口内 ...

  7. tbody滚动条占位导致与thead表头错位

    tbody出滚动条导致表头错位,上网上搜了一下,发现全是答非所问,能隐藏滚动条,还用问??我当前作出的效果是当tbody内容在正常情况下显示时,不显示滚动条,当内容区域高度超过外部容器时,滚动条自动显 ...

  8. 洛谷 P3592 [POI2015]MYJ

    题意 给定\(m\)个区间\([a_i,b_i]\)以及\(c_i\),对于一个含有\(n\)个元素的序列\(ans[]\),区间\(i\)对其的贡献为\(\min\{ans_i\}(i\in[a_i ...

  9. 四维DP之方格取数

    题目描述 传送门 设有N*N的方格图(N<=20,我们将其中的某些方格中填入正整数,而其他的方格中则放入数字0.如下图所示(见样例): 某人从图的左上角的A(1,1) 点出发,可以向下行走,也可 ...

  10. 在react中使用到的好用的插件

    1)antd UI组件 蚂蚁金服出品的 挺好用的 还有个移动端的antd-moblie 2) moment 日期处理类库 3)prop-types 第三方库 对组件props变量进行类型检测 4)qs ...