Lightning Blog
Blazor記事イメージ画像

【Blazor】 JavaScriptを呼び出し方

更新日:2023/07/19
Blazorでは、基本的にHTML,CSS,C#を使って、WEB開発をすることができますが、 JavaScriptを使わなければならない時が多々あります。 そんなときの対処方法について解説します。

    目次

  • JavaScriptを呼び出すには?
  • 実行して確認する

JavaScriptを呼び出すには?

セクション画像

JavaScriptを呼び出すには、まずIJSRuntimeというサービスを挿入する必要があります。 IJSRuntimeは、BlazorでC#コードとJavaScriptコードをやり取りするためのインターフェースです。 例として、IJSRuntimeを使用してJavaScriptのアラートを呼び出すプログラムを書いていきます。


@page "/"
@inject IJSRuntime JSRuntime

<h3>IJSRuntime Sample</h3>

<button @onclick="ShowAlert">Show Alert</button>

@code {
    private async Task ShowAlert()
    {
        await JSRuntime.InvokeVoidAsync("alert", "JavaScript呼び出し");
    }
}

ボタンのクリックイベントにShowAlertメソッドを割り当て、 そのメソッド内でJavaScriptを呼び出す処理を書いています。 IJSRuntime.InvokeVoidAsyncメソッドを使用して JavaScriptのalert関数を実行します。 第1引数には呼び出すメソッド名、第2引数にはメソッドに渡す引数を指定します。 こうすることで、ボタンがクリックされた際に、アラートが表示されます。


実行して確認する

セクション画像

先ほど作成したプログラムを実行して確認してみましょう。 アラートが表示されているのが、確認できます。

実行結果
実行結果

JavaScriptをなるべく使わない方が良いですが、現状Blazorでは全く使わないのは難しいです。 この記事の内容を覚えておくと便利かもしれません。


ブログ内の記事で書かれているサンプルコードは、GitHubから確認する事ができます。 是非参考にしてみてください。

この本では、Blazorの基本から高度なテクニックまで、実際のプロジェクトに役立つ知識を網羅しています。 初心者から経験者まで、Blazorを扱うすべての開発者にとっての必読書です。 この記事の執筆者も参考にした「Blazor入門」で、あなたのBlazorスキルを飛躍的に向上させませんか?

合わせて読みたい

カード画像
@keyを使い方

Blazorの@keyディレクティブは、コレクション内の項目を一意に識別し、BlazorがDOMの変更を効率的に行うのを支援します。特にリストや配列の更新時、このディレクティブが不必要なDOM操作を減少させ、アプリのパフォーマンス向上に寄与します。正確な動作のために、指定する要素が一意であることや適切な場所に設定することが重要です。

更新日:2023/09/07

カード画像
NavigationManagerの使い方

BlazorのNavigationManagerは、クライアントサイドのルーティングを制御するクラスで、URLの変更やページの表示を管理します。サービスを挿入することでNavigationManagerを使用でき、様々な機能が提供されます。例えば、URLの取得、ベースURIの取得、ページ遷移の制御、URL変更時のイベント通知などがあります。実際の適用例として、ボタンクリックによるページ遷移を示しています。

更新日:2023/07/25

An error has occurred. This application may no longer respond until reloaded. Reload 🗙