c# - Blazor 级联值
问题描述
我的目标是将一些数据传递给通用布局代码。我所拥有的代码片段,但linkedCyclones的值没有级联到较低的组件NavLinkedCyclones。
不确定谁将数据传递到布局组件中。我认为级联可以解决问题,但我要么做错了,要么与布局的工作方式不同。
NavLinkedCyclones.razor中的LinkedSetIds始终为空
我欢迎任何建议。
NavCycloneMenu.razor
<CascadingValue Value="@linkedCyclones" Name="LinkedSets">
<AuthorizeView Roles="Admin, Tier2, Tier3">
<Authorized>
<li class="nav-item px-3">
<NavLink class="nav-link" href="CycloneCalculator/GasMix">
<span class="oi oi-beaker" aria-hidden="true"></span> Gas Mix
</NavLink>
</li>
</Authorized>
</AuthorizeView>
<AuthorizeView>
<Authorized>
<li class="nav-item px-3">
<NavLink class="nav-link" href="CycloneCalculator/CycloneSizing">
<span class="oi oi-calculator" aria-hidden="true"></span> Cyclone Sizing
</NavLink>
</li>
</Authorized>
</AuthorizeView>
</CascadingValue>
@code {
private int[] linkedCyclones { get; set; }
protected override void OnInitialized()
{
linkedCyclones = new int[] { 101, 202, 303 };
}
}
GasMix.剃须刀
@layout CycloneLayout;
<div>
<h1>Gas Mix</h1>
</div>
CycloneLayout.razor
@inherits LayoutComponentBase
<div class="sidebar">
<NavCycloneMenu />
</div>
<div class="main">
<div class="top-row px-4 auth">
<LoginDisplay />
<a class="top-row-text" href="https://www.example.com/" target="_blank">About</a>
</div>
<div class="content px-4">
<NavLinkedCyclones />
@Body
</div>
</div>
NavLinkedCyclones.razor
<fieldset>
<legend>Linked Cyclones</legend>
@for (int i = 0; i < LinkedSetIds.Length - 1; i++)
{
<a href=""><img class="img-linked-cyclone" src="images/CycloneLogoNoWhite.png" alt="Cyclone"> Cyclone @(i+1)</a>
<div class="oi oi-arrow-thick-right" aria-hidden="true"></div>
<div class="oi oi-arrow-thick-right" aria-hidden="true"></div>
<div class="oi oi-arrow-thick-right" aria-hidden="true"></div>
}
<a href=""><img class="img-linked-cyclone" src="images/CycloneLogoNoWhite.png" alt="Cyclone"> Cyclone @LinkedSetIds.Length</a>
</fieldset>
@code{
[CascadingParameter(Name = "LinkedSets")]
public int[] LinkedSetIds { get; set; }
}
解决方案
推荐阅读
- python - 使用 PyGLM 或 NumPy 在 python 中翻译 vmath 等效语句的方法
- python - 如何通过Python列表中的文件迭代命令(循环)
- javascript - 即使 el 在 Vue 中不存在,为什么挂载的钩子也会触发?
- azure-cosmosdb - cosmos db 支持集合中的不同模式?
- c# - 以编程方式从 ASP.NET Core 应用程序运行 .NET Core 测试
- java-8 - 在实例变量中存储函数(Java)
- c# - CreatePushAsync 不起作用:VssServiceException:提供的参数无效。参数名称:newPush
- android - 在 gradle 中定义可从任何子模块访问的枚举
- python - 如何修复“找不到满足安装要求的版本(来自版本:)找不到匹配的安装发行版”错误
- python - Python:对作为字典键的 IP 范围进行排序