延遲載入閉包

可以使用 $() 函式將閉包轉換為延遲載入的參考。這會產生一個 QRL<Function> 類型。QRL 是閉包的可延遲載入的參考。在我們的例子中,我們已將與 onInput 事件關聯的閉包提取到組件主體中。因為它不再是內嵌的,所以我們需要更改 JSX 從 onInput$ 引用它的方式為 onInputQrl

請注意,我們的閉包會關閉由最佳化器捕獲的 store,然後在需要時恢復。

範例

在此範例中,我們將示範在 Qwik 中延遲載入行為是多麼容易。讓我們延遲載入在按下 Enter 鍵時執行的程式碼。使用 $() 包裝與 Enter 相關的程式碼,以將其標記為延遲載入。然後可以使用 .invoke() 延遲呼叫產生的 QRL<()=>void>,並且可以使用 await 關鍵字等待結果。

查看「符號」標籤以了解程式碼是如何分解成多個部分的。

編輯教學