摘要:我們這里簡(jiǎn)稱部件,是可以重復(fù)使用的標(biāo)記塊。使用將變量傳遞給頁(yè)面聲明周期限制由于部件的實(shí)例化時(shí)間比較晚,在頁(yè)面渲染期間,部件的生命周期會(huì)受到一些限制。事件沒(méi)有被注冊(cè),不能執(zhí)行。生命周期函數(shù)不能返回任何值。
Partials
partials 我們這里簡(jiǎn)稱【部件】,是可以重復(fù)使用的Twig標(biāo)記塊??梢杂糜诰W(wǎng)站的任何位置。比如頁(yè)眉頁(yè)腳或者其他Ajax內(nèi)容。
partials模板文件存儲(chǔ)在模板目錄的partials子目錄中。擴(kuò)展名是htm。最簡(jiǎn)單的例子:
This is a partial
partials 的配置部分是可選的,其中可選參數(shù)description,用于給后端用戶提供功能說(shuō)明。
description = "Demo partial" ==This is a partial
在配置部分可以定義組件,將在后續(xù)的組件部分學(xué)習(xí)。
部件的渲染
渲染部件的方式:{% partial "partial-name" %} 。這里只有一個(gè)必須的參數(shù),就是【文件名】這里的文件名是指文件的名稱部分,不包含擴(kuò)展名部分。如果在子目錄中,則需要寫(xiě)明路徑。部件可以被頁(yè)面、布局或者其他部件使用。
下面就是一個(gè)部件引用了另一個(gè)部件。
將變量傳遞給部件
部件的一個(gè)強(qiáng)大的功能是,我們可以給部件傳遞變量參數(shù)。比如我們擁有一個(gè)渲染博客列表的部件,我們可以將帖子的集合傳遞給中國(guó)博客列表部件。這時(shí)候這個(gè)部件就可以使用到多個(gè)不同的頁(yè)面或者布局中。傳遞方式:部件名稱 后面 跟 部件的變量名和傳遞值得變量名:
當(dāng)然也可以一次指定多個(gè)變量,進(jìn)行傳遞
在部件的內(nèi)部,可以和使用其他標(biāo)記變量一樣的,使用這些變量。
Country: {{ country }}, city: {{ city }}.
動(dòng)態(tài)部件
部件和頁(yè)面一樣,也可以使用Twig標(biāo)記。
部件的執(zhí)行生命周期
onStart函數(shù)在部件渲染之前和部分執(zhí)行之前執(zhí)行。
onEnd函數(shù)在部件渲染之前和部件執(zhí)行之后執(zhí)行。
在onStart和onEnd函數(shù)中,您可以將變量注入到Twig環(huán)境中。使用array notation將變量傳遞給頁(yè)面:
== function onStart() { $this["hello"] = "Hello world!"; } =={{ hello }}
聲明周期限制
由于部件的實(shí)例化時(shí)間比較晚,在頁(yè)面渲染期間,部件的生命周期會(huì)受到一些限制。
AJax事件沒(méi)有被注冊(cè),不能執(zhí)行。
生命周期函數(shù)不能返回任何值。
表單常規(guī)的POST操作在部件渲染的時(shí)候執(zhí)行。
一般來(lái)講,部件中的組件一般設(shè)計(jì)為基本組件,用來(lái)渲染一些沒(méi)有復(fù)雜處理的情況,比如按鈕等。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/28826.html
摘要:如果為,則渲染生命周期中相關(guān)的回調(diào)特別是和渲染回調(diào)函數(shù)是同步運(yùn)行的。如果為,則在下一次重繪之前,回調(diào)函數(shù)被安排為異步運(yùn)行。更改檢測(cè)策略,確定應(yīng)用程序是否需要更新外部的節(jié)點(diǎn)是一個(gè)可選的回調(diào)函數(shù),在節(jié)點(diǎn)追加到后執(zhí)行檢測(cè)外部節(jié)點(diǎn)的 部件的基本原理 部件是所有 Dojo 應(yīng)用程序的基本構(gòu)建要素。部件是主要的封裝單元,它能表示從用戶界面的單個(gè)元素,到更高級(jí)別的容器元素(如 Form 表單、段落、...
摘要:夏天加快開(kāi)發(fā)速度的快捷操作干貨盤(pán)點(diǎn)快捷方式你可以用做更多神奇的事情選項(xiàng)返回這是您在中加快開(kāi)發(fā)速度的魔杖。加快開(kāi)發(fā)速度的快捷操作干貨盤(pán)點(diǎn)選項(xiàng)卡不喜歡小部件用魔術(shù)棒取下它。 Flutter — 加快開(kāi)發(fā)速度的 IDE 快捷方式上一個(gè)關(guān)于??vscode 的插件??推薦大家看的過(guò)癮不,今天繼續(xù)給大家?guī)?lái)一些關(guān)于android s...
摘要:的中間件系統(tǒng)能以響應(yīng)式的方式管理異步或命令式,以及影響基于函數(shù)的組合部件或其他中間件的行為與屬性。控制部件渲染的生命周期對(duì)任何組合部件,中間件可以控制渲染管道的各個(gè)部分,如當(dāng)需要更新渲染時(shí)讓部件失效。 Dojo 的中間件系統(tǒng)能以響應(yīng)式的方式管理異步或命令式 API,以及影響基于函數(shù)的組合部件或其他中間件的行為與屬性 API。 框架已提供了幾個(gè)核心中間件和可選中間件,應(yīng)用程序開(kāi)發(fā)人員也可...
摘要:在創(chuàng)建自己的小部件首先創(chuàng)建一個(gè)名為的文件夾在項(xiàng)目根目錄。應(yīng)該包含小部件的屬性應(yīng)該包含小部件的渲染結(jié)果這個(gè)類是我們的自定義小部件。在顯示小部件內(nèi)容在視圖代碼中使用添加小部件應(yīng)用。看到以下代碼如何被稱為小部件類。 在 Yii2.0 創(chuàng)建自己的小部件 首先創(chuàng)建一個(gè)名為 widgets 的文件夾在項(xiàng)目根目錄?,F(xiàn)在在 widgets文件夾內(nèi)創(chuàng)建一個(gè)HelloWidget類 。使用這個(gè)小部件,我們...
在 Flutter 中創(chuàng)建圖像輪播 從社交媒體應(yīng)用程序到電子商務(wù)應(yīng)用程序,大多數(shù)現(xiàn)代應(yīng)用程序都有某種圖像輪播來(lái)展示產(chǎn)品、圖像或廣告。 由于 flutter 提供的內(nèi)置小部件,從頭開(kāi)始實(shí)現(xiàn)圖像輪播并不像您想象的那么難。 在本文中,您將學(xué)習(xí)如何從頭開(kāi)始創(chuàng)建圖像輪播并根據(jù)需要進(jìn)行自定義。最后,您將學(xué)習(xí)如何使用carousel_slider插件以更少的代碼創(chuàng)建圖像輪播。 這些是我...
閱讀 2022·2023-04-25 23:30
閱讀 1452·2021-11-24 10:18
閱讀 3070·2021-10-09 09:54
閱讀 2017·2021-10-08 10:05
閱讀 3431·2021-09-23 11:21
閱讀 3161·2019-08-30 15:52
閱讀 1560·2019-08-30 13:05
閱讀 1056·2019-08-30 13:02