gpt4 book ai didi

c# - 无法在 Razor 页面上使用 标签助手?

转载 作者:行者123 更新时间:2023-12-04 10:43:19 27 4
gpt4 key购买 nike

我正在使用 DotNetCore 3.1 和 Razor Pages。

我想使用我在 Index.Razor 上创建的 Razor 组件页面,但让它使用“静态”渲染模式。

根据文档:

To render a component from a page or view, use the Component Tag Helper:

<component type="typeof(Counter)" render-mode="ServerPrerendered" 
param-IncrementAmount="10" />


正如您在下面看到的,我可以使用它的名称作为标签( <Lister></Lister> )来渲染我的组件(名为 Lister)。但是,我无法使用 <component />标签助手来呈现它。

Can't use component tag helper

如果我运行页面,它既不会将语法突出显示为可识别的标签助手,也不会实际呈现它。

当我运行页面时,它没有显示组件,而是显示为
<component type="typeof(Lister)" render-mode="Static"></component>
在页面源中。

在另一个项目中,我能够在 MVC View ( .cshtml ) 文件中呈现相同的组件(使用相同的语法)。

编辑:

好的,所以我想我错过/搞砸的是 我的 Index.razor文件不是 Razor 页面,而是一个可路由的 Razor 组件。

我错误地将 Blazor 项目当成了 Razor Pages 项目。

Razor Pages 有 .cshtml文件类型

Razor Components 有 .razor文件类型(并且可能会混淆@page 指令)

Razor 组件无法访问 <component />标签助手,并且必须通过 <theNameOfIt></theNameOfIt> 使用其他 Razor 组件

谢谢您的帮助!

最佳答案

组件 Tag Helper 不是 Blazor 对象。 Blazor 中不存在标签助手或 html 助手的概念。这是 Razor Pages 和 MVC 的领域。在 Blazor 中,我们有一个组件模型。

通常,您应该使用 _Host.cshtml 文件中的组件 Tag Helper 来呈现 Razor App 组件。

您不能在 Index.razor 组件中嵌入组件 Tag Helper。不能在 Blazor 中使用组件标签助手。 _Host.cshtml 文件不是 Blazor。这是一个启动 Blazor 应用程序的 Razor Pages 文件...

关于c# - 无法在 Razor 页面上使用 <component/> 标签助手?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59828993/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com