ใส่ <Routes @rendermode=”InteractiveServer”/> แล้ว เวลาเปลี่ยนหน้า PageTitle ไม่เปลี่ยน


เหวออยู่พักใหญ่เลย ว่าอยู่ดีๆ เพิ่งสังเกตว่า <PageTitle> เซ็ตแล้ว แต่พอกดเมนูเปลี่ยนหน้า มันไม่เปลี่ยนตาม แก้ <HeadOutlet /> แบบนี้

// App.razor

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <base href="/" />
    <link rel="stylesheet" href="@Assets["lib/bootstrap/dist/css/bootstrap.min.css"]" />
    <link rel="stylesheet" href="@Assets["app.css"]" />
    <link rel="stylesheet" href="@Assets["Frontend.styles.css"]" />
    <ImportMap />
    <link rel="icon" type="image/png" href="favicon.png" />
    <HeadOutlet /> <!--  ลบออกไปแล้วเอาไปใส่ที่ MainLayout.cs แทน -->
</head>

<body>
    <Routes @rendermode="InteractiveServer" />
    <script src="_framework/blazor.web.js"></script>
    <script
        src="_content/Radzen.Blazor/Radzen.Blazor.js?v=@(typeof(Radzen.Colors).Assembly.GetName().Version)"></script>
</body>

</html>
// App.razor ที่เอา HeadOutlet ออกแล้ว

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <base href="/" />
    <link rel="stylesheet" href="@Assets["lib/bootstrap/dist/css/bootstrap.min.css"]" />
    <link rel="stylesheet" href="@Assets["app.css"]" />
    <link rel="stylesheet" href="@Assets["Frontend.styles.css"]" />
    <ImportMap />
    <link rel="icon" type="image/png" href="favicon.png" />
</head>

<body>
    <Routes @rendermode="InteractiveServer" />
    <script src="_framework/blazor.web.js"></script>
    <script
        src="_content/Radzen.Blazor/Radzen.Blazor.js?v=@(typeof(Radzen.Colors).Assembly.GetName().Version)"></script>
</body>

</html>

MainLayout.cs

// MainLayout.cs

@inherits LayoutComponentBase
<HeadOutlet />

แก้โคตรง่าย แต่หาโคตรยาก

0 0 votes
Article Rating
เราใช้คุกกี้เพื่อให้ทุกคนได้รับประสบการณ์การใช้งานที่ดียิ่งขึ้น
0
Would love your thoughts, please comment.x
()
x