Blazor入手教程(六)元件的生命週期

2022-03-24 16:23:30 字數 2404 閱讀 5623

blazor中元件的生命週期和

vue十分相似:大體上說都是建立,渲染,然後監聽變數的改變重新渲染,最後銷毀,當然細節上還是各有不同的。

vue元件的生命週期

blazor元件的生命週期

blazor元件生命週期

可覆寫方法

說明

無可重寫方法

建立元件例項

setparametersasync

每次引數注入時或在父級被修改時呼叫。即從父級傳過來的引數,或者祖先級傳過來的級聯引數,或者路由引數。在初始化之前,接受乙個parameterview型別引數,可列舉。

oninitialized/oninitializedasync

初始化,引數注入完成後

onparametersset/onparameterssetasync

每次引數設定之後呼叫,完成之後開始渲染元件,如果是非同步則等待完成後渲染

onafterrender /onafterrenderasync

每次渲染結束後呼叫,接受乙個引數firstrender表示是否是首次渲染,只有在首次渲染是是true,其餘均是false。

shouldrender

除了首次每次渲染完成後呼叫,返回乙個bool

值,表示是否進行渲染

每次渲染完成後呼叫,接

只有oninitialized/oninitializedasync是只呼叫一次的,其他的都有可能呼叫多次。

框架裡面的生命週期本來是沒有銷毀的。但是你可以通過元件繼承idispose介面來自定義元件的釋放。

單個頁面的生命週期

嵌入子元件時父元件和子元件modal的各自的生命週期

在blazor頁面可以覆寫這些方法。

@page "

/lifecycle

"@code

return

base

.setparametersasync(parameters);

}protected

override

void

oninitialized()

protected

override

task oninitializedasync()

protected

override

void onafterrender(bool

firstrender)

protected

override task onafterrenderasync(bool

firstrender)

protected

override

void

onparametersset()

protected

override

task onparameterssetasync()

////

摘要:

//returns a flag to indicate whether the component should render.

protected

override

bool

shouldrender()

}

blazor入手教程(一)前言

blazor入手教程(二)css和class繫結

blazor入手教程(三)列表和條件渲染

blazor入手教程(四)路由

blazor入手教程(五)元件

blazor入手教程(六)元件的生命週期

blazor入手教程(七)表單

blazor入手教程(八)布局layout

blazor入手教程(九)c#和js互相呼叫

blazor入手教程(十)部署安裝

blazor入手教程(十一)使用元件庫antdesign blazor

STL的六 元件及關係

容器 各種資料結構,如vector list deque set map等,來存放資料,從實現 度來看,stl容器是 種class template。演算法 各種常 的演算法,如sort find copy for each。從實現的 度來看,stl演算法是 種function tempalte.迭...

Vue教程10 元件 切換

登入a href click.prevent flag false 註冊a v if flag login v else register div 建立登入的元件 vue.component login 建立註冊的元件 vue.component register var vm newvue met...

Axure教程 0003 元件的觸發事件

axure rp 的每個元件都有著自己獨有的和一些公共的觸發事件,在不同的情況下觸發不同的事件。這裡我們就以上圖中文字輸入框為例 a.改組件已使用的觸發事件 1 文字改變時 當乙個元件內的文字改變時觸發,比如搜尋框,文字輸入框。2 獲取焦點時 當乙個元件通過點選或切換獲取焦點時觸發。比如搜尋框編輯時...