1.Blazor学习记录-1.Razor语法补漏_Razor组件_项目结构和路由组件
2.Blazor 学习记录_2.组件参数_导航参数_级联参数_事件和事件参数3.Blazor学习记录_3.模版页_数据绑定4.Blazor学习记录_4.组件状态向外传递_组件的任意参数(或说属性)5.Blazor学习记录_5.表单和验证_EditForm_EditContext6.Blazor学习记录_6.组件生命周期_组件的泛型支持7.Blazor学习记录_7.模版化组件_渲染模式8.Blazor学习记录_8.CSS隔离和代码隔离_异常处理_流式渲染9.Blazor学习记录_9.预呈现_渲染树10.Blazor学习记录_10.C#和JS互操作_访问WEB API11.Blazor学习记录_11.身份认证与授权12.Blazor学习记录_12._IIS部署_组件的引用_HTML元素的引用声明:以下学习记录基于B站Up主"叫我Teacher周"的Blazor教学视频。 这位大佬的B站地址是:https://space.bilibili.com/626253649
2.Razor语法补漏
- 指令
@page "/razor"
@page "/razor1"
@attribute [System.ComponentModel.DataAnotations.Schema.Table("table")]
@implements IDisposable
@inherits ComponentBase
@inject IAsyncDisposable Disposable1
@layout Layout.MainLaout
@namespace BlazorApp.Client
@typeparm T where T:class
@typeparm K where K:class
- 运算(表达式,用 @() 括起来才能识别为表达式)
- 表达式示例: 用 @() 括起来,显示表明 括号里的部分要进行运算
<p> Last week is: @(DateTime . Now - TimeSpan.FromDays(7)) </p>
- 使用(MarkupString)来把html字符串做强制类型转换为html标签语句,比如要拼接如下html:
<p>
@((MarkupString)"<h2>我是标题二<h2/>")
</p>
如果不做强制转换,则"<h2>我是标题二<h2/>"
会被显示为普通字符串而失去h2的语义。
- 使用 Razor特有的 text虚拟标记 来在C#代码块中将该标记包裹的内容显示为html文本:
@for(int i=0;i<10;i++)
{
<text>显示为html文本@(i)</text>
//使用 <span>显示为html文本@(i)<span/> 也能达到最终显示效果,但是上面是不想或不能用<span>时的解决方案。
}
注意<text>
标记并不是html标记,而是Razor特有的虚拟标记。
同时注意以上的用法 @(i):html文本和变量要在一行显示时,必须使用@(i)来显示表示这是C#表达式
3.Razor组件
- 1.继承自ComponentBase或实现了IComponent接口,每个组件都是一个类。
- 2.其命名空间默认为项目+文件件层级,或用@namespace指定显示指定命名空间。
- 3.组件的全局命名空间保存地为 _Imports.razor 文件。此命名为约定式,此命名的文件可以存在于不同层级,但它只作用于它所在的层级以及子层级。
4.项目结构和路由组件
- @page "/Counter" 路由必须用/开头。一个页面可以有多个路由,但彼此不能相同。
合集:
Blazor学习记录
分类:
Blazor
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战