摘要:組件是可以配置的構(gòu)建元素??梢愿郊拥巾撁娌季植考?。組件是的核心特性。每個(gè)組件都可以對(duì)網(wǎng)站的功能進(jìn)行擴(kuò)展。組件可以在頁面上輸出代碼,但是這不是主要的,組件的一個(gè)重要功能是處理請(qǐng)求處理表單提交回調(diào),處理頁面執(zhí)行周期。
Components
Components這里我們稱之為組件。
組件是可以配置的構(gòu)建元素??梢愿郊拥絇ages(頁面)、Layouts(布局)、Partials(部件)中。組件是October的核心特性。每個(gè)組件都可以對(duì)網(wǎng)站的功能進(jìn)行擴(kuò)展。組件可以在頁面上輸出HTML代碼,但是這不是主要的,組件的一個(gè)重要功能是處理Ajax請(qǐng)求、處理表單提交回調(diào),處理頁面執(zhí)行周期。允許向頁面注入變量或者實(shí)現(xiàn)網(wǎng)站安全性。
介紹
啟用組件,如果是后端管理系統(tǒng)中,可以選擇組件面板,將組件拖動(dòng)添加到頁面、部件和布局中。如果是采用文本編輯模式,則可以將組件的對(duì)應(yīng)模板的名稱添加到對(duì)應(yīng)的模板的配置部分。比如:下面的例子演示了如何將todolist組件添加到頁面中。
title = "Components demonstration" url = "/components" [demoTodo] maxItems = 20 == ...
當(dāng)您引用Components時(shí),它會(huì)自動(dòng)創(chuàng)建一個(gè)與Components名稱匹配的Page變量(在前面的示例中為demoTodo)。提供HTML標(biāo)記的Components可以使用標(biāo)記在Page上呈現(xiàn){% component %},如下所示:
{% component "demoTodo" %}
如果具有相同名稱的兩個(gè)組件分配給Page和Layout,Page中的組件將覆蓋布局中的組件。
組件的別名
如果有兩個(gè)注冊(cè)Components的名稱相同,則可以使用完全限定的名稱引用組件,并為其指定一個(gè)別名:
[OctoberDemoComponentsTodo demoTodoAlias] maxItems = 20
第一個(gè)參數(shù)是類名,第二個(gè)參數(shù)是注入到Page時(shí)使用的組件的別名。如果您指定了組件的別名,那么在引用組件時(shí),可以頁面代碼中的任何地方使用。下一個(gè)示例引用Components別名:
{% component "demoTodoAlias" %}
允許給同一個(gè)組件定義多個(gè)別名,以實(shí)現(xiàn)在同一個(gè)頁面上使用一個(gè)組件的多個(gè)實(shí)例。
[demoTodo todoA] maxItems = 10 [demoTodo todoB] maxItems = 20
組件使用外部屬性值
默認(rèn)情況下,屬性值在定義組件的配置部分會(huì)進(jìn)行初始化,這時(shí)候?qū)傩灾凳庆o態(tài)的,如下所示:
[demoTodo] maxItems = 20 == ...
不過有一個(gè)辦法可以使用外部的參數(shù)為組件屬性進(jìn)行初始化??梢允荱RL參數(shù),Partial部件參數(shù)。使用{{ paramName }}從外部變量加載的值的語法:
[demoTodo] maxItems = {{ maxItems }} == ...
假設(shè)在上面的示例中,組件 demoTodo 在部件中使用,則部件的變量maxItems**將為組件的變量進(jìn)行初始化:
{% partial "my-todo-partial" maxItems="10" %}
如果是URL參數(shù),則使用的方式略有不同:使用{{ :paramName }}名稱以冒號(hào)(:)開頭的語法
[demoTodo] maxItems = {{ :maxItems }} == ...
組件對(duì)應(yīng)的頁面在配置部分,應(yīng)該具有相應(yīng)的URL參數(shù)定義:
url = "/todo/:maxItems"
在October的后端,您可以使用Inspector工具將外部值分配給Components屬性。在Inspector中,您不需要使用大括號(hào)輸入?yún)?shù)名稱。Inspector中的每個(gè)字段在右側(cè)都有一個(gè)圖標(biāo),用于打開外部參數(shù)名稱編輯器。輸入paramName部分變量或:paramNameURL參數(shù)的參數(shù)名稱。
自定義默認(rèn)標(biāo)記
http://octobercms.com/docs/cm...
后續(xù)補(bǔ)充
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/28850.html
摘要:無狀態(tài)組件和有狀態(tài)組件無狀態(tài)組件和有狀態(tài)組件,劃分依據(jù)是根據(jù)組件內(nèi)部是否維護(hù)。展示型組件和容器型組件展示型組件和容器型組件,劃分依據(jù)是根據(jù)組件的職責(zé)。 React 深入系列,深入講解了React中的重點(diǎn)概念、特性和模式等,旨在幫助大家加深對(duì)React的理解,以及在項(xiàng)目中更加靈活地使用React。 React 組件有很多種分類方式,常見的分類方式有函數(shù)組件和類組件,無狀態(tài)組件和有狀態(tài)組件...
摘要:無狀態(tài)組件和有狀態(tài)組件無狀態(tài)組件和有狀態(tài)組件,劃分依據(jù)是根據(jù)組件內(nèi)部是否維護(hù)。展示型組件和容器型組件展示型組件和容器型組件,劃分依據(jù)是根據(jù)組件的職責(zé)。 文:徐超,《React進(jìn)階之路》作者授權(quán)發(fā)布,轉(zhuǎn)載請(qǐng)注明作者及出處 React 深入系列2:組件分類 React 深入系列,深入講解了React中的重點(diǎn)概念、特性和模式等,旨在幫助大家加深對(duì)React的理解,以及在項(xiàng)目中更加靈活地使...
摘要:組件基礎(chǔ)與通信一腳手架簡(jiǎn)介與安裝之前安裝的是模塊,之后安裝的是模塊。如果是三級(jí)組件通信,該如何處理比如父組件與孫子組件通信。和,提供和注入實(shí)現(xiàn)祖先組件和后代組件之間通信。 Vue組件基礎(chǔ)與通信 一、vue cli腳手架 ① vue cli 簡(jiǎn)介與安裝 vue cli 3.0之前安裝的是vue-cli模塊,vue cli 3.0之后安裝的是@vue/cli模塊。如果已經(jīng)全局安裝了舊版本的...
摘要:直接創(chuàng)建組件使用標(biāo)簽名組件模板,根據(jù)組件構(gòu)造器來創(chuàng)建組件。相應(yīng)的,實(shí)例也被稱為父組件。而且不允許子組件直接修改父組件中的數(shù)據(jù),強(qiáng)制修改會(huì)報(bào)錯(cuò)。 一、組件 (一)什么是組件 組件(Component)是 Vue.js最強(qiáng)大的功能之一。組件可以擴(kuò)展 HTML元素,封裝可重用的代碼組件是自定義元素(對(duì)象)。 (二)創(chuàng)建組件的兩種方式 官方推薦組件標(biāo)簽名是使用-連接的組合詞,例如:。 1、使用...
摘要:直接創(chuàng)建組件使用標(biāo)簽名組件模板,根據(jù)組件構(gòu)造器來創(chuàng)建組件。相應(yīng)的,實(shí)例也被稱為父組件。而且不允許子組件直接修改父組件中的數(shù)據(jù),強(qiáng)制修改會(huì)報(bào)錯(cuò)。 一、組件 (一)什么是組件 組件(Component)是 Vue.js最強(qiáng)大的功能之一。組件可以擴(kuò)展 HTML元素,封裝可重用的代碼組件是自定義元素(對(duì)象)。 (二)創(chuàng)建組件的兩種方式 官方推薦組件標(biāo)簽名是使用-連接的組合詞,例如:。 1、使用...
閱讀 2379·2021-11-11 16:54
閱讀 2631·2021-09-26 09:47
閱讀 3992·2021-09-08 09:36
閱讀 2743·2021-07-25 21:37
閱讀 934·2019-08-30 15:54
閱讀 2547·2019-08-30 14:22
閱讀 3256·2019-08-30 13:57
閱讀 2607·2019-08-29 17:17