【问题标题】:Setting a class property in a shared component in blazor在 blazor 的共享组件中设置类属性
【发布时间】:2020-08-08 15:09:33
【问题描述】:

我有一个导航栏,它是 Blazor ServerSide 中的一个共享组件。我想将 href 中的地址设置为可以传递用户 ID。我试过这个:

<NavLink class="nav-link" href="/student/registerguest/@StudentId">
                <span class="oi oi-plus" aria-hidden="true"></span> Register Guest
            </NavLink>

还有其他几个变体,但我收到一条错误消息,指出组件属性不支持复杂内容(混合 C# 和标记)。反正@StudentId可以放在这里吗?

【问题讨论】:

    标签: c# blazor blazor-server-side blazor-client-side


    【解决方案1】:

    您是否尝试过使用字符串插值,例如:

    href=@($"/student/registerguest/{student.StudentId}")
    

    【讨论】:

    • 你给我看的东西有效,但我意识到我需要它是@student.StudentId:&lt;NavLink class="nav-link" href="/student/registerguest/@student.StudentId"&gt; &lt;span class="oi oi-plus" aria-hidden="true"&gt;&lt;/span&gt; Register Guest &lt;/NavLink&gt;
    • 我似乎无法让 StudentId 绑定到链接
    • 我的答案包括学生。这行得通吗?
    • 是的,这确实有效,但是我似乎无法从页面中获取 studentId 的值到导航栏组件中。它只是将 studentId 读取为 0。有什么想法吗?
    • 解决此问题的一种方法是让 Nav 菜单组件的 OnInitializedAsync 生命周期方法加载学生 ID。
    猜你喜欢
    • 1970-01-01
    • 2021-02-20
    • 2012-10-23
    • 2020-03-25
    • 2020-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多