gpt4 book ai didi

asp.net-core - 如何更改 Razor 组件中 HTML 文档头部的标题和其他 html 元素?

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

我对 Razor Components 还很陌生我想更改 title和 HTML 文档中的其他数据- head根据用户访问的页面(例如,如果用户访问产品 X 的产品页面,我想相应地更改 titlehead 中的其他相关数据)。
我已经看过 https://github.com/aspnet/Blazor/issues/1311#issuecomment-470760857但提出的解决方案看起来有点hacky。
我也知道理论上我可以使用 JavaScript interop实现我的目标,但这似乎也有点困惑。

我试图像这样渲染应用程序:

@page "{*clientPath}"

<!DOCTYPE html>
<html>
@(await Html.RenderComponentAsync<App>())
</html>

但由于 components.server.js ( Uncaught Error: There is no browser renderer with ID 0. ) 中的错误,尝试失败。我知道我不应该将 JavaScript 标签放入组件中,但我想我会尝试一下。

希望你们能帮帮我。
谢谢阅读。 :)

最佳答案

我找到了一个 NuGet,它使它变得非常简单:
Toolbelt.Blazor.HeadElement

启动文件

using Toolbelt.Blazor.Extensions.DependencyInjection;

public void ConfigureServices(IServiceCollection services)
{
services.AddHeadElementHelper();

然后您所要做的就是将组件添加到您的页面:
@page "/customers"

<Toolbelt.Blazor.HeadElement.Title>
Customers
</Toolbelt.Blazor.HeadElement.Title>
<h1>Customers</h1>

结果将是
<title>customers<title> 

在你的头部部分。该插件还具有用于元标记和链接的组件。

关于asp.net-core - 如何更改 Razor 组件中 HTML 文档头部的标题和其他 html 元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55300703/

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