av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

.NET 8新預(yù)覽版使用 Blazor 組件進(jìn)行服務(wù)器端呈現(xiàn)(項目體驗)

瀏覽:213日期:2022-06-11 09:07:56
目錄
  • 簡介
  • 項目體驗

簡介

此預(yù)覽版添加了對使用 Blazor 組件進(jìn)行服務(wù)器端呈現(xiàn)的初始支持。這是 Blazor 統(tǒng)一工作的開始,旨在使 Blazor 組件能夠滿足客戶端和服務(wù)器端的所有 Web UI 需求。這是該功能的早期預(yù)覽版,因此仍然受到一定限制,但我們的目標(biāo)是無論選擇如何構(gòu)建應(yīng)用,都能使用可重用的 Blazor 組件。

服務(wù)器端呈現(xiàn) (SSR) 是指服務(wù)器生成 HTML 以響應(yīng)請求。使用 SSR 的應(yīng)用加載速度很快,因為渲染 UI 的所有艱苦工作都在服務(wù)器上完成,而無需下載大型 JavaScript 捆綁包。ASP.NET Core 對帶有 MVC 和 Razor 頁面的 SSR 現(xiàn)有支持,但這些框架缺乏用于構(gòu)建可重用的 Web UI 片段的組件模型。這就是開拓者的用武之地!我們正在添加對使用 Blazor 組件生成服務(wù)器呈現(xiàn)的 UI 的支持,這些組件也可以擴(kuò)展到客戶端以實現(xiàn)豐富的交互性。

在此預(yù)覽版中,可以使用 Blazor 組件執(zhí)行服務(wù)器端呈現(xiàn),而無需任何 .cshtml 文件。框架將發(fā)現(xiàn)可路由的 Blazor 組件,并將其設(shè)置為終結(jié)點。不涉及 WebAssembly 或 WebSocket 連接。你不需要加載任何JavaScript。每個請求由相應(yīng)終結(jié)點的 Blazor 組件獨立處理。

項目體驗

首先需要安裝 .NET 8預(yù)覽版最新版

1.創(chuàng)建一個空的 ASP.NET Core web app:

dotnet new web -o WebAppcd WebApp

2.在項目中添加一個簡單的Razor組件:

dotnet new razorcomponent -n MyComponent

更新MyComponent.razor內(nèi)容,將其變成一個帶有路由的合適的HTML頁面;

@page "/"@implements IRazorComponentApplication<MyComponent><!DOCTYPE html><html lang="en"><body>    <h1>Hello Blazor!</h1>    <p>The time is @DateTime.Now.ToShortTimeString()</p></body></html>

你還需要在這個組件上實現(xiàn)接口IRazorComponentApplication,該接口目前用于幫助發(fā)現(xiàn)應(yīng)用程序中的組件端點。這個設(shè)計可能會在以后的更新中改變,但目前這個接口是必需的。

4.在Program.cs中通過調(diào)用.AddRazorComponents()設(shè)置Razor組件服務(wù)

builder.Services.AddRazorComponents();

5.通過調(diào)用映射組件的端點。你需要為你的組件添加一個using指令:MapRazorComponents<TComponent>()

app.MapRazorComponents<WebApp.MyComponent>();

可路由組件將自動在所駐留的程序集中發(fā)現(xiàn)。再次注意,當(dāng)前必須實現(xiàn),但此設(shè)計可能會在以后的更新中更改。MyComponentTComponentIRazorComponentApplication

6.運行應(yīng)用程序并瀏覽到應(yīng)用程序根目錄查看你的組件渲染

但是似乎無法交互,我在使用了點擊事件但是沒法觸發(fā)了

修改MyComponent.razor文件代碼

@page "/"@implements IRazorComponentApplication<MyComponent><!DOCTYPE html><html lang="en"><body>    <h1>Hello Blazor!</h1>    <p>The time is @DateTime.Now.ToShortTimeString()</p>    <p>Counter: @counter</p>    <button @onclick="OnClick">run</button>    @code {private int counter = 0;private void OnClick(){    counter++;}    }</body></html>

運行效果:

當(dāng)我們點擊按鈕并不會觸發(fā)事件!可能是需要寫js去完成,歡迎大佬一塊討論討論新的技術(shù)

到此這篇關(guān)于.NET 8新預(yù)覽版本使用 Blazor 組件進(jìn)行服務(wù)器端呈現(xiàn)的文章就介紹到這了,更多相關(guān).NET使用 Blazor 組件內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

標(biāo)簽: ASP.NET
主站蜘蛛池模板: 91免费视频 | 精品一区二区电影 | 免费一级毛片 | 日韩免费毛片视频 | 91精品国产91久久久久久吃药 | 久久黄色网 | 日韩一区二区在线播放 | 久久久久久久久久久福利观看 | 天天操夜夜爽 | 成人影 | 日本在线视频一区二区 | 午夜视频精品 | 久久国产一区二区 | 久久精品视频播放 | 欧美一级在线观看 | 色婷婷综合网站 | 国产99久久久国产精品 | 欧美日韩中 | 日本电影免费完整观看 | 欧美国产日韩一区二区三区 | 国产资源在线视频 | 日韩在线视频一区 | 国产乱人伦 | 欧美高清视频一区 | 欧美精品中文字幕久久二区 | 成人精品国产一区二区4080 | 色综合一区二区三区 | 国精日本亚洲欧州国产中文久久 | 欧美精品在线一区二区三区 | 国产精品一区二区福利视频 | 亚洲三级av | 欧美在线a | 九九综合九九 | 成人在线免费看 | 中文字幕一二三区 | 天堂三级 | 亚洲国产精品久久久 | 99re国产视频 | 免费看国产片在线观看 | 男女羞羞在线观看 | 日韩成人免费视频 |