-
Blazor WebAssemblyのセットアップ: Blazor WebAssemblyを使用するためには、.NET Core SDKとBlazorテンプレートが必要です。まず、最新の.NET Core SDKをインストールし、次にコマンドラインからBlazorのテンプレートをインストールします。
dotnet new -i Microsoft.AspNetCore.Components.WebAssembly.Templates::3.2.0-preview1.20073.1
-
コンポーネントの作成: Blazor WebAssemblyでは、コンポーネントと呼ばれる再利用可能なUI要素を作成します。コンポーネントはC#で記述され、HTMLと組み合わせてUIを構築します。以下は、シンプルなコンポーネントの例です。
using Microsoft.AspNetCore.Components; public class CounterComponent : ComponentBase { private int count = 0; private void IncrementCount() { count++; } protected override void BuildRenderTree(RenderTreeBuilder builder) { builder.OpenElement(0, "button"); builder.AddAttribute(1, "onclick", EventCallback.Factory.Create(this, IncrementCount)); builder.AddContent(2, $"Click count: {count}"); builder.CloseElement(); } }
-
ルーティングとナビゲーション: Blazor WebAssemblyでは、ページ遷移やルーティングもサポートされています。以下の例では、ルートコンポーネントとしてAppコンポーネントを作成し、ルーティングを設定しています。
using Microsoft.AspNetCore.Components; using Microsoft.AspNetCore.Components.Routing; public class App : ComponentBase { [Inject] protected NavigationManager NavigationManager { get; set; } protected override void OnInitialized() { NavigationManager.LocationChanged += OnLocationChanged; } private void OnLocationChanged(object sender, LocationChangedEventArgs e) { // ページ遷移時の処理 } }
-
API呼び出し: Blazor WebAssemblyでは、Web APIなどのバックエンドサービスとの通信も簡単に行えます。以下は、HTTPクライアントを使用してAPIを呼び出す例です。
using System.Net.Http; using System.Net.Http.Json; public class WeatherForecastService { private readonly HttpClient httpClient; public WeatherForecastService(HttpClient httpClient) { this.httpClient = httpClient; } public async Task<WeatherForecast[]> GetWeatherForecasts() { return await httpClient.GetFromJsonAsync<WeatherForecast[]>("api/weatherforecast"); } }
以上が、Blazor WebAssemblyの基本的な使用方法とコード例の一部です。これらの手法を応用することで、効果的なフロントエンド開発が可能です。Blazor WebAssemblyは、クライアントサイドでの高速なアプリケーション開発に役立つ強力なツールです。