Modelldefinitionen, Felder und Komponententypen field-types
Erfahren Sie anhand von Beispielen mehr über die Felder und Komponententypen, die mit dem universellen Editor in der Eigenschaftenleiste bearbeitet werden können. Erfahren Sie, wie Sie Ihre eigene App instrumentieren können, indem Sie eine Modelldefinition erstellen und mit der Komponente verknüpfen.
Überblick overview
Wenn Sie Ihre eigenen Apps für die Verwendung mit dem universellen Editor anpassen, müssen Sie die Komponenten instrumentieren und definieren, welche Felder und Komponententypen sie in der Eigenschaftenleiste des Editors bearbeiten können. Erstellen Sie dazu ein Modell und verknüpfen Sie es über die Komponente mit diesem.
Dieses Dokument bietet einen Überblick über eine Modelldefinition sowie über die verfügbaren Felder und Komponententypen sowie Beispielkonfigurationen.
Modelldefinitionsstruktur model-structure
Um eine Komponente über die Eigenschaftenleiste im universellen Editor zu konfigurieren, muss eine Modelldefinition vorhanden und mit der Komponente verknüpft sein.
Die Modelldefinition ist eine JSON-Struktur, die mit einem Array von Modellen beginnt.
[
{
"id": "model-id", // must be unique
"fields": [] // array of fields which shall be rendered in the properties rail
}
]
Im Abschnitt Felder in diesem Dokument finden Sie weitere Informationen zum Definieren des fields
-Arrays.
Um die Modelldefinition mit einer Komponente zu verwenden, kann das Attribut data-aue-model
verwendet werden.
<div data-aue-resource="urn:datasource:/content/path" data-aue-type="component" data-aue-model="model-id">Click me</div>
Laden einer Modelldefinition loading-model
Sobald ein Modell erstellt wurde, kann es als externe Datei referenziert werden.
<script type="application/vnd.adobe.aue.model+json" src="<url-of-model-definition>"></script>
Alternativ können Sie das Modell auch inline definieren.
<script type="application/vnd.adobe.aue.model+json">
{ ... model definition ... }
</script>
Felder fields
Ein Feldobjekt hat die folgende Typdefinition.
component
ComponentType
name
string
label
FieldLabel
description
FieldDescription
placeholder
string
value
FieldValue
valueType
ValueType
string
, string[]
, number
, date
, boolean
sein.required
boolean
readOnly
boolean
hidden
boolean
condition
RulesLogic
multi
boolean
validation
ValidationType
raw
unknown
Komponententypen component-types
Im Folgenden finden Sie die Komponententypen, die für das Rendern von Feldern verwendet werden können.
aem-tag
aem-content
boolean
checkbox-group
container
aem-content-fragment
date-time
multiselect
number
radio-group
reference
richtext
select
tab
text
AEM-Tag aem-tag
Ein AEM Tag-Komponententyp aktiviert eine AEM Tag-Auswahl, die zum Anhängen von Tags an die Komponente verwendet werden kann.
code language-json |
---|
|
![Screenshot des AEM-Tag-Komponententyps](./media_1159651cabbe711ba93dd5acc430b04fcaa0a07c6.png?width=750&format=png&optimize=medium)
AEM-Inhalt aem-content
Der AEM-Inhaltskomponententyp aktiviert eine AEM-Inhaltsauswahl, die zum Festlegen von Inhaltsverweisen verwendet werden kann.
code language-json |
---|
|
![Screenshot des AEM-Inhaltskomponententyps](./media_1f5cbfa1ff71d1a51b6c9e61d194b235760281617.png?width=750&format=png&optimize=medium)
Boolesch boolean
Ein boolescher Komponententyp speichert einen einfachen true/false-Wert, der als Umschalter gerendert wird. Er bietet einen zusätzlichen Validierungstyp.
customErrorMsg
string
code language-json |
---|
|
code language-json |
---|
|
![Screenshot eines booleschen Komponententyps](./media_1b673ea5591e814bb10c8c2327a8d4345c8b6da50.png?width=750&format=png&optimize=medium)
Kontrollkästchengruppe checkbox-group
Ähnlich wie bei einem booleschen Wert ermöglicht ein Kontrollkästchengruppen-Komponententyp die Auswahl mehrerer true/false-Elemente, die als mehrere Kontrollkästchen gerendert werden.
code language-json |
---|
|
![Screenshot eines Kontrollkästchengruppen-Komponententyps](./media_1a66c505c6ad3e5d45c1f493e5676ce69ebcca822.png?width=750&format=png&optimize=medium)
Container container
Ein Container-Komponententyp ermöglicht die Gruppierung von Komponenten. Er bietet eine zusätzliche Konfiguration.
collapsible
boolean
code language-json |
---|
|
![Screenshot eines Container-Komponententyps](./media_144a48a63fe8acb3d1ee1472b114c38b773fcdc4e.png?width=750&format=png&optimize=medium)
Inhaltsfragment content-fragment
Mit der Auswahl für Inhaltsfragmente können Sie ein Inhaltsfragment und dessen Varianten (falls erforderlich) auswählen. Er bietet eine zusätzliche Konfiguration.
variationName
string
code language-json |
---|
|
![Screenshot einer Inhaltsfragmentauswahl](./media_11756da76e36f9d7b47e87d06371a2f6c99371c54.png?width=750&format=png&optimize=medium)
Datum und Uhrzeit date-time
Ein Datums-/Uhrzeitkomponententyp ermöglicht die Angabe eines Datums, einer Uhrzeit oder einer Kombination davon. Er bietet zusätzliche Konfigurationen.
displayFormat
string
valueFormat
string
Er bietet außerdem einen zusätzlichen Validierungstyp.
customErrorMsg
string
valueFormat
nicht respektiert wird.code language-json |
---|
|
code language-json |
---|
|
![Screenshot eines Datums-/Uhrzeitkomponententyps](./media_1fb7ce59e7d55ecb8462d42e25b84056e31381cc5.png?width=750&format=png&optimize=medium)
Experience Fragment experience-fragment
Mit der Experience Fragment-Auswahl können Sie ein Experience Fragment und dessen Varianten (falls erforderlich) auswählen. Er bietet eine zusätzliche Konfiguration.
variationName
string
code language-json |
---|
|
![Screenshot einer Experience Fragment-Auswahl](./media_192e8f6521eb9ef084f0cd392393a4ce5dccc8dc6.png?width=750&format=png&optimize=medium)
Mehrfachauswahl multiselect
Ein Mehrfachauswahl-Komponententyp zeigt mehrere Elemente zur Auswahl in einer Dropdown-Liste an, einschließlich der Möglichkeit, die auswählbaren Elemente zu gruppieren.
code language-json |
---|
|
code language-json |
---|
|
![Screenshot eines Mehrfachauswahl-Komponententyps](./media_150cc6e56950fb2f7a83278ced464fba80c7ed9ac.png?width=750&format=png&optimize=medium)
![Screenshot eines Mehrfachauswahl-Komponententyps mit Gruppierung](./media_1dece1668ebedfa6b8c3956dc9d3277c4178c7488.png?width=750&format=png&optimize=medium)
Zahl number
Ein Zahl-Komponententyp ermöglicht die Eingabe einer Zahl. Er bietet zusätzliche Validierungstypen.
numberMin
number
numberMax
number
customErrorMsg
string
numberMin
oder numberMax
nicht erfüllt ist.code language-json |
---|
|
code language-json |
---|
|
![Screenshot des Zahl-Komponententyps](./media_15146425e109a386730d4a2edbf36bb159899e009.png?width=750&format=png&optimize=medium)
Optionsfeldgruppe radio-group
Ein Optionsfeldgruppen-Komponententyp ermöglicht eine einander ausschließende Auswahl aus mehreren Optionen, die als Gruppe ähnlich einer Kontrollkästchengruppe gerendert werden.
code language-json |
---|
|
![Screenshot eines Optionsfeldgruppen-Komponententyps](./media_19057aca4a834513c482f4f637c785b3b14c08419.png?width=750&format=png&optimize=medium)
Referenz reference
Ein Referenz-Komponententyp ermöglicht einen Verweis auf ein anderes Datenobjekt aus dem aktuellen Objekt.
code language-json |
---|
|
![Screenshot eines Referenz-Komponententyps](./media_113db176eaad949caf55bc670dd51fe33b825464a.png?width=750&format=png&optimize=medium)
Rich-Text rich-text
Rich-Text ermöglicht eine mehrzeilige Rich-Text-Eingabe. Er bietet zusätzliche Validierungstypen.
maxSize
number
customErrorMsg
string
maxSize
überschritten wird.code language-json |
---|
|
code language-json |
---|
|
![Screenshot eines Textbereich-Komponententyps](./media_12bd81eda29531805af2de8c81a45684f722c94a9.png?width=750&format=png&optimize=medium)
Auswahl select
Ein Auswahl-Komponententyp ermöglicht die Auswahl einer einzelnen Option aus einer Liste vordefinierter Optionen in einem Dropdown-Menü.
code language-json |
---|
|
![Screenshot eines Auswahl-Komponententyps](./media_1c86213678ecd6ed6128f8ec37aab80bac74b7779.png?width=750&format=png&optimize=medium)
Registerkarte tab
Ein Registerkarten-Komponententyp ermöglicht das Gruppieren anderer Eingabefelder auf mehreren Registerkarten, um die Layout-Organisation für Autorinnen und Autoren zu verbessern.
Eine tab
-Definition kann als Trennzeichen in einer Reihe von fields
betrachtet werden. Alles, was nach einem tab
kommt, wird auf dieser Registerkarte platziert, bis auf einen neuen tab
gestoßen wird, woraufhin die folgenden Elemente auf der neuen Registerkarte platziert werden.
Wenn Sie Elemente haben möchten, die oberhalb von allen Registerkarten angezeigt werden, müssen diese vor allen Registerkarten definiert werden.
code language-json |
---|
|
![Screenshot des Registerkarten-Komponententyps](./media_132123718b8b23e0fcbd612a3bdf5cfaeb6e1b3dd.png?width=750&format=png&optimize=medium)
Text text
Text ermöglicht die Eingabe einer einzelnen Textzeile. Er enthält zusätzliche Validierungstypen.
minLength
number
maxLength
number
regExp
string
customErrorMsg
string
minLength
, maxLength
und/oder regExp
verstoßen wird,code language-json |
---|
|
code language-json |
---|
|
![Screenshot eines Textkomponententyps](./media_1983458e1a920be3f84923c8ae42d65f78b7df63e.png?width=750&format=png&optimize=medium)