blazor组件中的渲染顺序

时间:2020-10-21 05:29:08

标签: c# blazor

我在blazor组件中有两个RenderFragments。一个是MainContent,另一个是AuxilaryContent,即我首先放置AuxilaryContent,然后再放置MainContent。截至目前,辅助内容的呈现由MainContent继承,因为当我首先放置AuxilaryContent时。

但是我的要求是我需要首先渲染MainContent,基于MainContent的渲染,我可以渲染或不渲染AuxilaryContent。但是在DOM中,AuxilaryContent始终位于MainContent之前。

这可能吗?

如果我在MainContent中使用bool,则通过使用bool触发SecondaryContent手段,它需要另一个StateHasChanged()。它涉及到不必要的组件重新渲染。

@page "/check"

@AuxilaryContent
@MainContent

@code {
    RenderFragment MainContent => (builder) =>
    {
        //It must be rendered first
    };
    RenderFragment AuxilaryContent => (builder) =>
    {
        //It should rendered after MainContent rendering. But in DOM, it always lies before MainContent
    };
}

1 个答案:

答案 0 :(得分:0)

我会考虑将这个组件重组为两个嵌套组件:主容器控制辅助组件的条件渲染。

相关问题