[英]Referencing partial view or another master page inside dotvvm masterpage
我正在嘗試在dotvvm主頁中渲染諸如razor渲染局部的東西。 但除了以下內容外,從文檔中什么也找不到:
母版頁嵌套
您還可以將母版頁嵌套在另一個母版頁中,依此類推。 只需在母版頁中使用@masterPage指令指定父母版頁即可。
基本上,我想呈現導航菜單,該菜單將在父母版頁的另一個母版頁中定義。
我認為您正在尋找標記控件,請參閱文檔以了解更多詳細信息: https : //www.dotvvm.com/docs/tutorials/control-development-markup-only-controls/2.0
簡而言之,標記控件允許您在dothtml文件中聲明自定義控件。 您可以在標記控件中使用所有DotVVM功能,如果要使用數據綁定,則只需明確聲明應如何傳遞視圖模型中的數據。
簡約的標記控件可能如下所示:
<!-- The control must be used when data context is this view model: -->
@viewModel Full.Name.Of.MyViewModelBase
<ul class=menu>
<li>{{value: NameOfSomething}}</li>
<li>...</li>
</ul>
然后,必須注冊該控件,以便DotVVM可以找到它:
// in DotvvmStartup
config.Markup.AddMarkupControl(tagPrefix: "cc", tagName: "MyMenu", "Views/MyMenu.dotcontrol");
之后,您可以在任意位置使用該控件(當然,遞歸僅在sometimes時有效):
<cc:MyMenu />
您還可以聲明屬性,然后在控件內使用它。 因為視圖模型不一定適合,所以它可能有助於控件的可重用性。 我將其留給文檔
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.