通过Blazor使用C#开发SPA单页面应用程序(2)

  • 时间:
  • 浏览:0

通过Blazor使用C#开发SPA单页面应用线程池(1) - 简介及特点

通过Blazor使用C#开发SPA单页面应用线程池(2) - 开发环境

通过Blazor使用C#开发SPA单页面应用线程池(3) - 基础知识

 通过Blazor使用C#开发SPA单页面应用线程池(4) - Ant Design Button

今天大伙儿 尝试创建2个 默认的Blazor应用。

.Net Core 3.0前要Visual Studio 2019 的支持。

安装.Net Core 3.0 预览版 SDK版本,注意预览版对应的VS版本,我这里安装的是v3.0.0-preview6。

一定要开启预览选项能不能使用Net Core Preview,在工具> 选项>预览功能 中开启。

新建Asp.net Core Web 应用线程池,项目名称:BlazorDemo

目前Blazor非要创建基于服务器端渲染的项目。

项目创建后延续以往Asp.net风格,模板会创建项目框架及样例页面,运行时会得到从前2个 SPA页面。大伙儿 通过开发者工具观察,点击Click me按钮后,右侧的元素中刚刚数值Dom节点有变化,这人 没法,达到局部更新的效果。

大伙儿 在看看项目处理方案的底部形态,好熟悉啊,基本完整性刚刚Asp.net mvc 的底部形态嘛。

这人 _Host.cshtml 页面应该刚刚Blazor的主页面,类似vue 的index.html 页。

大伙儿 再看看那个Counter 的计数器组件是何如实现的。

@page "/counter"

<h1>Counter</h1>

<p>Current count: @currentCount</p>

<button class="btn btn-primary" @onclick="@IncrementCount">Click me</button>

@code {

int currentCount = 0;

void IncrementCount()

{

currentCount++;

}

}

@page "/counter" 定义路由

<p>Current count: @currentCount</p> 显示计数器变量值

<button class="btn btn-primary" @onclick="@IncrementCount">Click me</button>

指定样式,绑定onclick事件,调用IncrementCount最好的措施

void IncrementCount()

{

   currentCount++; 计数器+1

}

上方的代码嘴笨 简单,但充分说明了Blazor组件开发的模式,有C#和Asp.net mvc 开发经验的完整性能不能驾驭。

没法Blazor组件是何如做到局部更新的呢,从前上方的代码经过编译时会生成以下内容,RenderTreeBuilder 为每2个 元素、属性、事件指定2个 编号。更多的内容还有待我刚刚挖掘,好了今天就到这里了,休息休息一下。