当前位置: 首页 > news >正文

WordPress科技网站企业在线培训系统

WordPress科技网站,企业在线培训系统,牙科医院网站建设,安徽服装网站建设文章目录 前言基础语法路由Page 页面元素条件生成if / elseforforeach 绑定参数绑定(赋值,单向)参数绑定(双向)事件绑定字典绑定 attributes 组件化如何使用Parameter 参数注入使用回调函数组件声明回调组件注入回调组…

文章目录

  • 前言
  • 基础语法
    • 路由
      • @Page
    • 页面元素条件生成
      • @if / else
      • @for
      • @foreach
    • 绑定
      • 参数绑定(赋值,单向)
      • 参数绑定(双向)
      • 事件绑定
      • 字典绑定 @attributes
    • 组件化
      • 如何使用
      • @Parameter 参数注入
      • 使用
      • 回调函数
        • 组件声明回调
        • 组件注入回调
        • 组件触发回调
      • 直接控制 @ref
    • 生命周期
      • App起始阶段:
      • 生命周期钩子阶段:
      • App终止阶段:
    • 调试
      • 热重置
      • 控制台输出

前言

这里我们会讲解Blazor的基础语法和简单组件化使用

Blazor 常用语法介绍

基础语法

路由

@Page

路由位置

@page "/fetchdata"

页面元素条件生成

@if / else

@if (forecasts == null)
{<p><em>Loading...</em></p>
}
else
{<table class="table"><thead><tr><th>Date</th><th>Temp. (C)</th><th>Temp. (F)</th><th>Summary</th></tr></thead></table>
}

@for

@for(var i = 0;i< 10; i++)
{<text>我是text @i</text>
}

@foreach

@foreach (var forecast in forecasts){<tr><td>@forecast.Date.ToShortDateString()</td><td>@forecast.TemperatureC</td><td>@forecast.TemperatureF</td><td>@forecast.Summary</td></tr>}

绑定

参数绑定(赋值,单向)

<input title="@Title" value="@Value"  />@code {[Parameter]public string Title{ get; set; }[Parameter]public string Value { get; set; }}

参数绑定(双向)

<input @bind="Title" />@code {public string Title{ get; set; }
}

事件绑定

<button @onclick="ShowTest"/>@code {public void ShowTest(){Console.WriteLine("我被按钮点击了");}
}

字典绑定 @attributes

简化控件的属性绑定


<input @attributes="InputList" />
//等价于 <input title="我的标题" value = "10" />
@code {public Dictionary<string, object> InputList { get; set; } = new Dictionary<string, object>(){{"title","我的标题"},{"value","10"}};
}

组件化

  • 只有razor才能组件化
  • razor文件名首字母必须大写
  • 不需要注入,可以直接使用组件。所以为了避免文件名冲突,所以要规范化命名

如何使用

在这里插入图片描述

@Parameter 参数注入

参数注入支持多参数

  • 普通数据类型
  • List类型
  • Action委托
@code {[Parameter]public string Title{ get; set; }[Parameter]public string Value { get; set; }[Parameter]public List<string> TestList { get; set; } = new List<string>();}

使用

<Test Title="我是测试的标题" Value="数值" TestList="@strList"/>@code{public List<string> strList = new List<string>(){};protected override Task OnInitializedAsync(){for(var i = 0;i < 10; i++){strList.Add("我是标题" + i);}return base.OnInitializedAsync();}}

回调函数

组件声明回调

Test.Razor里面

    [Parameter]public EventCallback<string> OnClick{ get; set; }//string是回调的返回参数

组件注入回调

引用组件


<Test  OnClick="TestBtn"/>@code{//注意,注入的函数的参数和回调的参数要保持一致public void TestBtn(string msg){Console.WriteLine("我接收到了回调"+msg);}}

组件触发回调

Test.razor


<button @onclick="ShowTest"/>
@code {[Parameter]public EventCallback<string> OnClick{ get; set; }//通过按钮事件触发回调,这样引用的页面就会触发回调函数public void ShowTest(){OnClick.InvokeAsync("点击回调函数");}}

直接控制 @ref

使用@ref 直接控制组件元素

Test是我们定义的组件

//通过@ref直接使用组件
<Test @ref="myTest"  OnClick="TestBtn"/>@code{//先声明组件private Test myTest { get; set; }//通过某种方式调用组件,我这里是用按钮点击public void TestBtn(string msg){myTest.Title = "我直接操控修改了Title";myTest.TestBtn();Console.WriteLine("我接收到了回调"+msg);}}

生命周期

App起始阶段:

在这个阶段,Blazor应用程序初始化并加载所需要的资源。

  • OnInitializeAsync:
    • 当应用程序初始化时调用,通常用于执行一些初始化操作。
      组件渲染阶段:在这个阶段,组件将被渲染并呈现到用户界面中。
  • OnParametersSet:
    • 在组件接收到新的参数值后调用,可以在此方法中执行与参数相关的操作。
      OnAfterRender:在组件渲染到屏幕后调用,可以在此方法中执行与DOM操作相关的操作。

生命周期钩子阶段:

在这个阶段,Blazor提供了一些特定的生命周期钩子方法,可以用于执行一些特定的操作。

  • OnInitialized:
    • 在组件初始化完成后调用,可以在此方法中执行一些初始化逻辑。
  • OnAfterRenderAsync:
    • 在组件渲染到屏幕后调用,可以在此方法中执行异步操作。
  • OnParametersSetAsync:
    • 在组件接收到新的参数值后调用,可以在此方法中执行异步操作。

App终止阶段:

在这个阶段,Blazor应用程序将完成并进行清理工作。

  • OnDispose:
    • 当组件从DOM中移除时调用,可以在此方法中执行一些清理逻辑。

调试

热重置

在这里插入图片描述

控制台输出

因为用的是C#而不是JS。所以无法直接使用JS的console.log方法。但是可以使用C#的Console.WriteLine()

打印在运行的控制台里面

在这里插入图片描述

http://www.hkea.cn/news/306637/

相关文章:

  • 如何做可以赚钱的网站关键词如何快速排名
  • 深圳品牌做网站公司有哪些百度app推广
  • 重庆建设行业信息网站搜狗登录入口
  • 同仁行业网站建设报价北京做的好的seo公司
  • 陕西自助建站做网站郑州外语网站建站优化
  • 小型企业网站系统cilimao磁力猫最新版地址
  • 铁岭网站建设移动网站广东网站seo
  • 网站模板插件sem和seo
  • 用wordpress制作网站模板沈阳seo
  • 优化一个网站多少钱宜昌网站seo
  • 刚做的网站怎么才能搜索到枸橼酸西地那非片功效效及作用
  • 罗湖区网站公司专业模板建站
  • 哪有备案好的网站国产系统2345
  • 网站开发怎么让别人看到最新营销模式有哪些
  • ssm网站开发源码百度推广多少钱一个月
  • 手游门户网站建设appstore关键词优化
  • 齐河网站开发seo服务内容
  • 北京微信网站建设费用想卖产品怎么推广宣传
  • 网站上线的步骤厦门网站推广公司哪家好
  • 网站做app的软件有哪些百度一下你就知道下载
  • 界面设计的重要性百度seo关键词排名推荐
  • 股票做T网站直播营销
  • 北京手机网站建设公司排名技术优化seo
  • wordpress可爱的主题seo优化教程
  • 自己可以申请网站做外卖吗网站描述和关键词怎么写
  • 公司网站网页设计seo站长工具推广平台
  • 重庆南岸营销型网站建设公司哪家专业真实的网站制作
  • 郑州企业网站建设兼职推广渠道
  • 网站哪些数据优化大师的作用
  • 政府网站集约化建设总结营销软文推广平台