You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Blazor WASM中如何正确将级联参数传递给子组件?

问题分析与解决方案

问题根源

你的代码存在两个关键错误,导致级联参数无法正常传递:

  1. 级联值绑定错误:ParentItem中CascadingValue的Value="Name"是直接传递字符串"Name",而非绑定组件的Name参数,子组件自然接收不到传入的"MyName"。
  2. 特性语法不完整:ChildItem里的[CascadingParameter(Name="Name"]缺少闭合双引号,编译器无法正确解析这个级联参数特性。

修正后的代码

ParentItem.razor

<CascadingValue Value="@Name">
    @ChildContent
</CascadingValue>

(确认ParentItem.razor.cs中的Name已标记为公共参数:[Parameter] public string Name { get; set; })

ChildItem.razor.cs

[CascadingParameter(Name = "Name")]
public string Name { get; set; }

额外说明

  • 传递级联值时,CascadingValue的Value必须用@绑定到组件的参数/属性,否则会被识别为普通字符串。
  • 特性注解的语法必须严格完整,引号、括号需正确配对,避免编译解析失败。

内容的提问来源于stack exchange,提问作者coolblue2000

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 08:27:01