BlazorのページコンポーネントからMainLayoutのメソッドを呼び出す

ヴィヴェンディ

実際のページコンテンツをロードするMainLayoutページを備えたBlazorアプリがあります@Body

私の場合Index.razorMainLayoutページ内に読み込まれます。

親ページにある子ページ(Index.razor)からメソッドを呼び出す方法はありますか。MainLayout.razor

例:

MainLayout.razor

<div class="content">
<ul class="menu">
  <li>menu item 1</li>
</ul>

@Body

</div>

@code
{
    public async Task Test()
    {
        await JsRuntime.InvokeAsync<object>("console.log", "test parent");
    }
}

Index.razor

<h1>This is the index page</h1>
<button @onclick="(async () => await btn_clicked())">Call parent method</button>

@code
{
    // Call method in MainLayout
    public async Task btn_clicked()
    {
        await parent.Test();
    }
}
ネビルナゼラン

これは、カスケード値との組み合わせで実行できますEventCallback

まず、のイベントコールバックを作成しますTestこれを行うには、MainLayout.razorに次のコードを追加します。

EventCallback btn_clicked => EventCallback.Factory.Create(this, Test);

または、このオブジェクトを1回だけ作成するようにするには、次を使用できます。

EventCallback _btn_clicked = EventCallback.Empty;
EventCallback btn_clicked  {
    get {
        if (_btn_clicked.Equals(EventCallback.Empty))
            _btn_clicked = EventCallback.Factory.Create(this, Test);
        return _btn_clicked;
    }
}

次に、このイベントコールバックを体にカスケードするようにしてください。

<CascadingValue Value=btn_clicked >
    @Body
</CascadingValue>

次に、Index.razorコードで、プロパティを設定します。

[CascadingParameter]
public EventCallback btn_clicked { get; set; }

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

子コンポーネントから親コンポーネントのメソッドを呼び出す

分類Dev

Blazorの親コンポーネントから子コンポーネントメソッドを呼び出す方法は?

分類Dev

mainメソッドからコンポーネントのメソッドを呼び出す方法は?

分類Dev

Angular:異なるモジュール内の別のコンポーネントからコンポーネントメソッドを呼び出す方法

分類Dev

ページからnuxtのコンポーネントメソッドを呼び出すことは可能ですか?

分類Dev

Nuxt.jsを使用してページコンポーネントのasyncData()メソッドからmixin関数を呼び出します

分類Dev

reactの上位コンポーネントからインスタンスメソッドを呼び出す

分類Dev

nativescriptのアプリイベントからコンポーネントメソッドを呼び出す方法

分類Dev

Vue.jsの別のコンポーネントからメソッドを呼び出す

分類Dev

ElectronのglobalShortcutからReactコンポーネント内のメソッドを呼び出す

分類Dev

Angularの別のコンポーネントからメソッドを呼び出す方法は?

分類Dev

this。$ refsを介して別のvue.jsコンポーネントからメソッドを呼び出す

分類Dev

Reactコンポーネントメソッドを外部から呼び出す

分類Dev

Vue.js-別のコンポーネントからメソッドを呼び出す方法

分類Dev

子から親コンポーネントのメソッドを呼び出す-ReactNative

分類Dev

Angular2のHTMLからコンポーネントメソッドを呼び出す

分類Dev

vueコンポーネントからvueアプリのメソッドを呼び出す方法

分類Dev

外部JSファイルからAngularコンポーネントのメソッドを呼び出す

分類Dev

reactの孫機能コンポーネントから祖父母メソッドを呼び出す

分類Dev

親コンポーネントから複数の子メソッドを呼び出す

分類Dev

Angular | 別のコンポーネントからngonit()メソッドを呼び出す方法

分類Dev

外部クラスからVueコンポーネント内のメソッドを呼び出す

分類Dev

従来のHTMLから角度コンポーネントメソッドを呼び出す

分類Dev

親から機能コンポーネントの子メソッドを呼び出す

分類Dev

コンポーネントbのinitメソッドをaから呼び出す

分類Dev

EmberJSで親から子コンポーネントのメソッドを呼び出す方法

分類Dev

別のコンポーネントから App.component.ts メソッドを呼び出す

分類Dev

ionic2の子コンポーネントからメソッドを呼び出す

分類Dev

Reactの子コンポーネントのメソッドを呼び出す

Related 関連記事

  1. 1

    子コンポーネントから親コンポーネントのメソッドを呼び出す

  2. 2

    Blazorの親コンポーネントから子コンポーネントメソッドを呼び出す方法は?

  3. 3

    mainメソッドからコンポーネントのメソッドを呼び出す方法は?

  4. 4

    Angular:異なるモジュール内の別のコンポーネントからコンポーネントメソッドを呼び出す方法

  5. 5

    ページからnuxtのコンポーネントメソッドを呼び出すことは可能ですか?

  6. 6

    Nuxt.jsを使用してページコンポーネントのasyncData()メソッドからmixin関数を呼び出します

  7. 7

    reactの上位コンポーネントからインスタンスメソッドを呼び出す

  8. 8

    nativescriptのアプリイベントからコンポーネントメソッドを呼び出す方法

  9. 9

    Vue.jsの別のコンポーネントからメソッドを呼び出す

  10. 10

    ElectronのglobalShortcutからReactコンポーネント内のメソッドを呼び出す

  11. 11

    Angularの別のコンポーネントからメソッドを呼び出す方法は?

  12. 12

    this。$ refsを介して別のvue.jsコンポーネントからメソッドを呼び出す

  13. 13

    Reactコンポーネントメソッドを外部から呼び出す

  14. 14

    Vue.js-別のコンポーネントからメソッドを呼び出す方法

  15. 15

    子から親コンポーネントのメソッドを呼び出す-ReactNative

  16. 16

    Angular2のHTMLからコンポーネントメソッドを呼び出す

  17. 17

    vueコンポーネントからvueアプリのメソッドを呼び出す方法

  18. 18

    外部JSファイルからAngularコンポーネントのメソッドを呼び出す

  19. 19

    reactの孫機能コンポーネントから祖父母メソッドを呼び出す

  20. 20

    親コンポーネントから複数の子メソッドを呼び出す

  21. 21

    Angular | 別のコンポーネントからngonit()メソッドを呼び出す方法

  22. 22

    外部クラスからVueコンポーネント内のメソッドを呼び出す

  23. 23

    従来のHTMLから角度コンポーネントメソッドを呼び出す

  24. 24

    親から機能コンポーネントの子メソッドを呼び出す

  25. 25

    コンポーネントbのinitメソッドをaから呼び出す

  26. 26

    EmberJSで親から子コンポーネントのメソッドを呼び出す方法

  27. 27

    別のコンポーネントから App.component.ts メソッドを呼び出す

  28. 28

    ionic2の子コンポーネントからメソッドを呼び出す

  29. 29

    Reactの子コンポーネントのメソッドを呼び出す

ホットタグ

アーカイブ