在服务器端,(由代码)创建html(文本)。
在客户端,浏览器通过url获取到html(文本),将html解析成可视的页面元素。(同时能解析到css、js、图片等)
在客户端,通过交互提交新的请求(可以传递文本形式的内容,如json),由服务器端去响应,然后重复上述过程。
在客户端,可以通过javascript实现与界面元素的交互。
ex:
在客户端,如果不想整个页面都刷新,就需要用到局部刷新技术。
blazor要达到的目标,就是利用局部刷新的技术,用C#代码(不用js)就可以实现与界面元素的交互,从而实现逻辑的一致性。
示例:
@page "/counter"
<PageTitle>Counter</PageTitle>
<h1>Counter</h1>
<p>Current count: @currentCount</p>
<button class="btn btn-primary" @onclick="IncrementCount">Click me</button>
@code {
private int currentCount = 0;
[Parameter]
public int IncrementAmount { get; set; } = 1;
private void IncrementCount()
{
currentCount += IncrementAmount;
}
}
看,这是官方的代码示例,一句javascript都没用到。