Referenz zur Formatierungssyntax
elmType
Gibt an, welcher Typ von Element erstellt werden soll. Folgende Elemente sind gültige Elemente:
div
span
a
img
svg
path
button
p
filepreview
Bei allen anderen Werten wird ein Fehler zurückgegeben.
filepreview
Verwenden Sie das Spezial elmType
filepreview
mit dem Attribut, das src
auf @thumbnail.<Size>
festgelegt ist, um Miniaturansichten für Dateien in Ihrer Dokumentbibliothek anzuzeigen.
Wurde die Miniaturansicht erfolgreich geladen, ist unten links ein kleines Markentypsymbol sichtbar. Wenn die Miniaturansicht nicht geladen werden kann (oder wenn der Dateityp keine Miniaturansichten unterstützt), wird stattdessen ein Dateitypsymbol angezeigt.
"elmType": "filepreview",
"attributes": {
"src": "@thumbnail.medium"
}
img src security
Bilder aus den folgenden Domänen sind zulässig:
- Mandantendomäne, konfigurierte Multi-Geo-Domänen und Vanity-Domänen (
company.sharepoint.com
) -
cdn.office.net
,akamaihd.net
,static2.sharepointonline.com
CDNs
Die meisten anderen externen Bildquellen werden in benutzerdefinierten Formatierern standardmäßig blockiert. Um externe Images einzuschließen und bestimmte Domänen oder CDNs zuzulassen, muss die Domäne einer Einstellung auf Standortebene hinzugefügt werden. Weitere Informationen finden Sie unter Zulassen oder Einschränken der Möglichkeit zum Einbetten von Inhalten auf SharePoint-Seiten
txtContent
Eine optionale Eigenschaft, die den Textinhalt des in elmType
definierten Elements festlegt. Der Wert dieser Eigenschaft kann entweder eine Zeichenfolge sein (auch eine Spezialzeichenfolge) oder ein Objekt des Typs „Expression“.
style
Eine optionale Eigenschaft, die die Formatattribute des in elmType
definierten Elements festlegt. Konkret handelt es sich um ein Objekt mit Name/Wert-Paaren, die CSS-Namen und -Werten entsprechen. Die Werte der einzelnen Eigenschaften in einem Objekt des Typs „style“ können entweder eine Zeichenfolge sein (auch eine Spezialzeichenfolge) oder ein Objekt des Typs „Expression“. Folgende Attribute sind für „style“ zulässig:
'background-color'
'fill'
'background-image'
'border'
'border-bottom'
'border-bottom-color'
'border-bottom-style'
'border-bottom-width'
'border-color'
'border-left'
'border-left-color'
'border-left-style'
'border-left-width'
'border-right'
'border-right-color'
'border-right-style'
'border-right-width'
'border-style'
'border-top'
'border-top-color'
'border-top-style'
'border-top-width'
'border-width'
'outline'
'outline-color'
'outline-style'
'outline-width'
'border-bottom-left-radius'
'border-bottom-right-radius'
'border-radius'
'border-top-left-radius'
'border-top-right-radius'
'box-decoration-break'
'box-shadow'
'box-sizing'
'overflow-x'
'overflow-y'
'overflow-style'
'rotation'
'rotation-point'
'opacity'
'cursor'
'height'
'max-height'
'max-width'
'min-height'
'min-width'
'width'
'flex-grow'
'flex-shrink'
'flex-flow'
'flex-direction'
'flex-wrap'
'flex'
'justify-content'
'align-items'
'box-align'
'box-direction'
'box-flex'
'box-flex-group'
'box-lines'
'box-ordinal-group'
'box-orient'
'box-pack'
'font'
'font-family'
'font-size'
'font-style'
'font-variant'
'font-weight'
'font-size-adjust'
'font-stretch'
'grid-columns'
'grid-rows'
'margin'
'margin-bottom'
'margin-left'
'margin-right'
'margin-top'
'column-count'
'column-fill'
'column-gap'
'column-rule'
'column-rule-color'
'column-rule-style'
'column-rule-width'
'column-span'
'column-width'
'columns'
'padding'
'padding-bottom'
'padding-left'
'padding-right'
'padding-top'
'bottom'
'clear'
'clip'
'display'
'float'
'left'
'overflow'
'position'
'right'
'top'
'visibility'
'z-index'
'border-collapse'
'border-spacing'
'caption-side'
'empty-cells'
'table-layout'
'color'
'direction'
'letter-spacing'
'line-height'
'text-align'
'text-decoration'
'text-indent'
'text-transform'
'unicode-bidi'
'vertical-align'
'white-space'
'word-spacing'
'hanging-punctuation'
'punctuation-trim'
'text-align-last'
'text-justify'
'text-outline'
'text-overflow'
'text-shadow'
'text-wrap'
'word-break'
'word-wrap'
'stroke'
'fill-opacity'
'--inline-editor-border-width'
'--inline-editor-border-style'
'--inline-editor-border-radius'
'--inline-editor-border-color'
'-webkit-line-clamp'
'object-fit'
'transform' // Only translate(arg) and translate(arg, arg) are currently supported
Das Beispiel unten zeigt den Wert eines Objekts des Typs „style“. Wie Sie sehen, werden zwei Formateigenschaften angewendet (padding
und background-color
). Der Wert für padding
ist ein hartcodierter Zeichenfolgenwert. Der Wert für background-color
ist ein Objekt des Typs „Expression“, das entweder in Rot (#ff0000
) oder in Grün (#00ff00
) ausgewertet wird, je nachdem, ob der Wert des aktuellen Felds (@currentField
) kleiner als 40 ist. Weitere Informationen finden Sie im Abschnitt Expression-Objekt.
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "div",
"style": {
"padding": "4px",
"background-color": {
"operator": "?",
"operands": [
{
"operator": "<",
"operands": [
"@currentField",
40
]
},
"#ff0000",
"#00ff00"
]
}
}
}
Hier sehen Sie das gleiche Beispiel wie oben unter Verwendung der Ausdruckssyntax im Excel-Format:
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "div",
"style": {
"padding": "4px",
"background-color": "=if(@currentField < 40, '#ff0000', '#00ff00')"
}
}
attributes
Die attributes
optionale Eigenschaft gibt weitere Attribute an, die dem von angegebenen Element hinzugefügt werden elmType
sollen. Konkret handelt es sich um ein Objekt mit Name/Wert-Paaren. Gültig sind die folgenden Attributnamen:
- href
- rel
- src
- class
- target
- title
- role
- iconName
- d
- aria
- Datenabfrage
- viewBox
- preserveAspectRatio
- ziehbar
Bei allen anderen Attributnamen wird ein Fehler zurückgegeben. Attributwerte können entweder Objekte des Typs „Expression“ oder Zeichenfolgen sein. Das folgende Beispiel fügt dem in elmType
definierten Element zwei Attribute hinzu (target
und href
). Das Attribut target
ist eine hartcodierte Zeichenfolge. Das href
-Attribut ist ein Ausdruck, der zur Laufzeit ausgewertet wird in http://finance.yahoo.com/quote/
, ergänzt um den Wert des aktuellen Felds (@currentField
).
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"target": "_blank",
"href": "='http://finance.yahoo.com/quote/' + @currentField"
}
Untergeordnetes Element
Die children
optionale Eigenschaft gibt untergeordnete Elemente des durch elmType
angegebenen Elements an. Der Wert wird als Array von Objekten des Typs elm
angegeben. Er kann beliebig geschachtelt werden. Ist für ein Element die Eigenschaft txtContent
festgelegt, werden die Eigenschaften der untergeordneten Elemente ignoriert.
debugMode
Die debugMode
optionale Eigenschaft ist für das Debuggen vorgesehen. Sie gibt Fehlermeldungen aus und protokolliert Warnungen in der Konsole.
forEach
Die forEach
optionale Eigenschaft ermöglicht es einem Element, sich für jeden Member eines bestimmten mehrwertigen Felds oder Arrays zu duplizieren. Der Wert der "forEach"
-Eigenschaft sollte im Format "iteratorName in @currentField"
oder "iteratorName in [$FieldName]"
oder vorliegen "iteratorName in Expression-Returning-An-Array"
.
iteratorName
stellt den Namen der Iteratorvariable dar, die verwendet wird, um den aktuellen Member des Mehrwertfelds darzustellen. Der Name des Iterators kann eine beliebige Kombination aus alphanumerischen Zeichen und einem Unterstrich (_
) sein, der nicht mit einer Ziffer beginnt.
Das in der Schleife verwendete Feld muss in einem unterstützten Feldtyp mit aktivierten Optionen für mehrere Werte enthalten sein: Person, Lookup und Choice. Ein Ausdruck, der ein Array zurückgibt, kann auch verwendet werden.
Im Element mit forEach
oder seinen untergeordneten Elementen kann die Iteratorvariable so bezeichnet werden, als ob es sich um ein neues Feld handelt. Der Zugriff auf den Index des Iterators erfolgt mit dem loopIndex
-Operator.
forEach
kann nicht auf das Stammelement angewendet werden, und es wird kein Element gerendert, wenn kein Wert im Feld vorhanden ist.
Beispiele finden Sie unter Formatieren von Mehrwertfeldern .
customRowAction
button
Elemente können verwendet werden, um eine bestimmte Aktion für das übergeordnete Element zu starten. Jedes button
Element verfügt über die erforderliche Eigenschaft , customRowAction
, die eine action
angibt, die beim Auswählen der Schaltfläche verwendet wird. Die Aktion muss einer der folgenden Werte sein:
defaultClick: Schaltflächen mit dieser Aktion führen dieselbe Aktion aus wie das Klicken auf das Listenelement in einer nicht angepassten Ansicht. Im folgenden Beispiel wird eine Schaltfläche veranschaulicht, die bei Auswahl eine Auswahl für das Element simuliert, was zum Öffnen des Listenelements führt. Durch das Hinzufügen dieser Beispielschaltfläche zu einer Dokumentbibliothek wird eine Auswahl der Datei oder des Ordners simuliert, was dazu führt, dass die Datei oder der Ordner geöffnet wird.
{ "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json", "elmType": "button", "txtContent": "Open this item", "customRowAction": { "action": "defaultClick" } }
teilen: Wenn Sie die Schaltfläche auswählen, wird das Freigabedialogfeld geöffnet. Es folgt ein Beispiel für diese Art von Schaltfläche:
{ "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json", "elmType": "button", "txtContent": "Share this item", "customRowAction": { "action": "share" } }
delete: Wenn Sie die Schaltfläche auswählen, wird das Löschbestätigungsdialogfeld geöffnet.
editProps: Wenn Sie die Schaltfläche auswählen, wird die Seite mit den Elementeigenschaften im Bearbeitungsmodus geöffnet.
openContextMenu: Wenn Sie die Schaltfläche auswählen, wird das Standardkontextmenü des Elements geöffnet.
setValue: Wenn Sie das Element auswählen, wird das Element mit den angegebenen Feldwerten aktualisiert.
{ "elmType": "div", "txtContent": "[$FieldName]", "customRowAction":{ "action": "setValue", "actionInput": { "FieldInternalName_1": "FieldValue_1", "FieldInternalName_2": "FieldValue_2", } } }
executeFlow: Wenn Sie die Schaltfläche auswählen, wird der angegebene Flow gestartet, der durch die
actionParams
ID im Attribut angegeben wird. Ein Beispiel dazu finden Sie unter Erstellen einer Schaltfläche zum Starten eines Flusses. Im folgenden Beispiel wird diese Art von Schaltfläche veranschaulicht:{ "$schema": "https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json", "elmType": "button", "txtContent": "It's Flow Time!", "customRowAction": { "action": "executeFlow", "actionParams": "{\"id\":\"f7ecec0b-15c5-419f-8211-302a5d4e94f1\", \"headerText\":\"It's Flow Time!\",\"runFlowButtonText\":\"Do it\"}" } }
Das Attribut
actionParams
kann bei Verwendung der AktionexecuteFlow
die folgenden Optionen aufweisen:- id: ID des zu startenden Flusses (erforderlich)
- headerText: Legt den Text am oberen Rand des Fluss-Bereichs fest (optional)
- runFlowButtonText: Legt den Text der primären Schaltfläche im Fluss-Bereich fest (optional)
embed: Wenn Sie auf die Schaltfläche klicken, wird eine Legende mit eingebettetem Inhalt geöffnet. Der Inhalt wird durch die URL bestimmt, die
src
im -Attribut inactionInput
angegeben wird. Sie können auch dieheight
undwidth
der Legende mithilfe vonactionInput
steuern.Hinweis
- Der
src
muss nur der Teil eines einbettbaren Codes sein, derurl
von einer App generiert wird (normalerweise imsrc
-Attribut desiframe
-Elements zu finden). - Diese Aktion ist nur in der neueren Version der Microsoft Listen-App verfügbar.
Weitere Informationen zum Zulassen oder Einschränken von Domänen finden Sie unter Zulassen oder Einschränken der Möglichkeit zum Einbetten von Inhalten in SharePoint Listen mithilfe von benutzerdefinierten Formatierern.
{ "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json", "elmType": "button", "customRowAction": { "action": "embed", "actionInput": { "src": "https://www.relecloud.com/embed/ll00hWQMJxQ", "height": "350", "width": "700" } }, "txtContent": "Click here to open recipe video 👩🍳" }
Das Attribut
actionInput
kann bei Verwendung der Aktionembed
die folgenden Optionen aufweisen:- src: Die URL des Einzubettenden Inhalts. (erforderlich)
- height: Die Höhe der Legende, in der der eingebettete Inhalt gerendert wird. Der Standardwert ist 300. (optional)
- width: Die Breite der Legende, in der der eingebettete Inhalt gerendert wird. Der Standardwert ist 300. (optional)
- Der
customCardProps
Fügen Sie dem Element eine benutzerdefinierte Karte hinzu, die beim Zeigen oder click
Ereignis angezeigt wird. Die folgenden Anpassungen stehen zur Verfügung:
-
"formatter"
: JSON-Objekt, das die Formatierung für benutzerdefinierte Karten definiert. -
"openOnEvent"
: Ereignis, für das die customCard geöffnet werden soll.- Gültige Werte:
click
,hover
- Gültige Werte:
-
"directionalHint"
: Geben Sie die Richtung relativ zum Ziel an, in der die benutzerdefinierte Karte positioniert wird. Dies ist der bevorzugte Standort, aber er ist nicht garantiert, je nach Speicherplatz.- Gültige Werte:
bottomAutoEdge
,bottomCenter
,bottomLeftEdge
,bottomRightEdge
,leftBottomEdge
,leftCenter
,leftTopEdge
,rightBottomEdge
,rightCenter
,rightTopEdge
topAutoEdge
topCenter
,topLeftEdge
topRightEdge
- Gültige Werte:
-
"isBeakVisible"
: Geben an, ob die Spitze angezeigt wird oder nicht. -
"beakStyle"
: Gibt das Stilobjekt für den Benak des benutzerdefinierten Karte an.
defaultHoverField
Fügt das Profil Karte für die Personenfelder oder die Datei-Hoverkarte für Dateien in der Dokumentbibliothek hinzu.
-
"defaultHoverField": "[$Editor]"
fügt eine Profilkarte für das Editorfeld hinzu. -
"defaultHoverField": "[$FileLeafRef]"
fügt eine Dateihoverkarte in „documentLibrary“ hinzu.
columnFormatterReference
Dies wird durch den Formatierer-JSON-Code der referenzierten Spalte ersetzt. Verweise auf mehreren Ebenen werden nicht unterstützt.
Verweise auf Mehrfachauswahl-Spaltenformatierungsvorlagen und Spaltenformatierer, die nicht auf Vorlagen basieren, werden nicht unterstützt.
{
"columnFormatterReference": "[$FieldName]"
}
inlineEditField
Fügt den Feld-Editor für die Spalte hinzu, auf die verwiesen wird.
{
"elmType": "div",
"inlineEditField": "[$FieldName]",
"txtContent": "[$FieldName]"
}
filePreviewProps
ist filePreviewProps
eine optionale Eigenschaft, die das Überschreiben der Standardstile des Dateitypsymbols und des Markentypsymbols in filepreview
.elmType ermöglicht.
Und fileTypeIconClass
brandTypeIconClass
können verwendet werden, um CSS-Klassennamen für das Dateitypsymbol bzw. die Markentypsymbolelemente bereitzustellen.
Und fileTypeIconStyle
brandTypeIconStyle
können verwendet werden, um Stile für das Dateitypsymbol bzw. das Markentypsymbol bereitzustellen. Diese Formatvorlagen haben Vorrang vor den gleichen Formatvorlagen, die aus den CSS-Klassen stammen, die von den beiden oben genannten Eigenschaften bereitgestellt werden.
"elmType": "filepreview",
"attributes": {
"src": "@thumbnail.medium",
},
"filePreviewProps": {
"fileTypeIconClass": "sp-css-borderColor-neutralLight",
"fileTypeIconStyle": {
"width": "100px"
},
"brandTypeIconClass": "sp-css-borderColor-neutralLight",
"brandTypeIconStyle": {
"width": "68px"
}
}
Ausdrücke
Werte für txtContent
, Stileigenschaften und Attributeigenschaften können als Ausdrücke ausgedrückt werden, sodass sie zur Laufzeit basierend auf dem Kontext des aktuellen Felds (oder der aktuellen Zeile) ausgewertet werden. Objekte des Typs „Expression“ können geschachtelt werden. Das heißt, sie dürfen andere Objekte des Typs „Expression“ enthalten.
Ausdrücke können mit Ausdrücken im Excel-Stil in SharePoint Online und SharePoint Server-Abonnementedition ab dem Featureupdate 22H2 oder mithilfe von Ausdrücken der abstrakten Syntaxstruktur in SharePoint Online, SharePoint Server-Abonnementedition und geschrieben werden. SharePoint Server 2019.
Auf alle Felder in ViewFields
kann in Ausdrücken verwiesen werden, auch wenn sie als markiert Explicit
sind.
Excel-Formatvorlage Ausdrücke
Alle Excel-Formatvorlagen-Ausdrücke beginnen mit einem Gleichheitszeichen (=
). Dieser Ausdrucksstil ist nur in SharePoint Online und SharePoint Server-Abonnementedition ab dem Featureupdate 22H2 verfügbar. Dieser Ausdrucksstil ist in SharePoint Server 2019 oder SharePoint Server-Abonnementedition vor dem Featureupdate 22H2 nicht verfügbar.
Dieser einfache bedingte Ausdruck ergibt none
, wenn @me
ungleich [$Author.email]
ist, und ergibt andernfalls ''
:
=if(@me != [$Author.email], 'none', '')
Komplexere if/else-Anweisungen können wie folgt geschrieben werden:
=if([$Sentiment] <= 0.3, 'sp-field-severity--blocked', if([$Sentiment] < 0.9,'sp-field-severity--warning','sp-field-severity--good'))
Nicht bedingte Operatoren, die einen oder zwei Operanden annehmen, können wie folgt geschrieben werden:
=[$foo] * -7
=sin(@currentField)
=toString(60 + (sin(6.2831853 * @currentField) * 60))
Abstrakte Syntaxstruktur-Ausdrücke
Das folgende Beispiel enthält ein Expression-Objekt, das den Ausdruck ausführt:
(@currentField > 40) ? '100%' : (((@currentField * 2.5).toString() + '%')
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"operator": "?",
"operands": [
{
"operator": ">",
"operands": [
"@currentField",
"40"
]
},
"100%",
{
"operator": "+",
"operands": [
{
"operator": "toString()",
"operands": [
{
"operator": "*",
"operands": [
"@currentField",
2.5
]
}
]
},
"%"
]
}
]
}
Operatoren
Operatoren legen fest, welcher Typ von Operation ausgeführt werden soll. Gültige Operatorwerte sind:
+
-
/
*
<
>
%
==
!=
<=
>=
||
&&
toString()
Number()
Date()
cos
sin
?
:
toLocaleString()
toLocaleDateString()
toLocaleTimeString()
indexOf
toLowerCase
join
length
abs
loopIndex
floor
ceiling
pow
substring
getDate
getMonth
getYear
toUpperCase
lastIndexOf
startsWith
endsWith
replace
replaceAll
padStart
padEnd
getThumbnailImage
getUserImage
addDays
addMinutes
appendTo
removeFrom
split
Binäre arithmetische Operatoren : Die standardmäßigen arithmetischen binären Operatoren, die zwei Operanden erwarten, sind:
+
-
/
*
<
>
%
==
!=
<=
>=
Unäre Operatoren : Die unären Standardoperatoren, die nur einen Operanden erwarten, sind:
-
toString()
: gibt eine Zeichenfolge zurück, die das Objekt darstellt.-
"txtContent": "=toString(45)"
ergibt 45
-
-
Number()
: gibt den numerischen Wert zurück, wenn der Operand keine Zahl ist, wird NaN zurückgegeben.-
"txtContent": "=Number('365')"
ergibt 365 -
"txtContent": "=Number('Wowee')"
ergibt NaN -
"txtContent": "=Number(Date('12/26/1981'))"
ergibt 378190800000
-
-
Date()
: gibt ein datetime-Objekt aus dem Parameter zurück (konvertiert Zeichenfolgen oder Zahlen in Datumsangaben, empfindlich auf das Gebietsschema)-
"txtContent": "=Date('12/26/1981')"
ergibt 26.12.1981, 12:00:00 Uhr
-
-
cos
: gibt den Kosinus des angegebenen Winkels zurück, der im Bogenmaß angegeben werden soll.-
"txtContent": "=cos(5)"
ergibt 0,28366218546322625
-
-
sin
: gibt den Sinus einer Zahl zurück.-
"txtContent": "=sin(90)"
ergibt 0,8939966636005579
-
-
toDateString()
: gibt ein Datum in einem kurzfreundlichen Format zurück.-
"txtContent": "=toDateString(@now)"
Das Ergebnis variiert nicht je nach Gebietsschema des Benutzers und sieht wie folgt aus: "Mi 03. August 2022"
-
-
toLocaleString()
: Gibt eine sprachabhängige Darstellung eines Datums zurück.-
"txtContent":"=toLocaleString(@now)"
Die Ergebnisse variieren je nach Gebietsschema des Benutzers, aber en-us sieht wie folgt aus : "05.02.2019, 13:22:24 Uhr"
-
-
toLocaleDateString()
: Gibt eine sprachabhängige Darstellung nur des Datumsteils eines Datums zurück.-
"txtContent":"=toLocaleDateString(@now)"
Die Ergebnisse variieren je nach Gebietsschema des Benutzers, aber en-us sieht wie "05.02.2019" aus.
-
-
toLocaleTimeString()
: Gibt eine sprachabhängige Darstellung nur des Zeitteils eines Datums zurück.-
"txtContent":"=toLocaleTimeString(@now)"
Die Ergebnisse variieren je nach Gebietsschema des Benutzers, aber en-us sieht wie "13:22:24" aus.
-
-
toLowerCase
: gibt den in Kleinbuchstaben konvertierten Wert zurück (funktioniert nur für Zeichenfolgen) – nur in SharePoint Online verfügbar-
"txtContent":"=toLowerCase('DogFood')"
ergibt "dogfood"
-
-
abs
: gibt den absoluten Wert für eine angegebene Zahl zurück – nur in SharePoint Online verfügbar-
"txtContent":"=abs(-45)"
ergibt 45
-
-
length
: gibt die Anzahl der Elemente in einem Array (Mehrfachauswahl von Personen oder Auswahlfeldern) zurück, für alle anderen Werttypen gibt es 1 zurück, wenn true und 0 bei false. Er gibt NICHT die Länge eines Zeichenfolgenwerts zurück (lesen Sie dazu die weiter unten erläuterteindexOf
-Problemumgehung für einen solchen Vorgang). - Nur in SharePoint Online verfügbar-
"txtContent":"=length(@currentField)"
kann zu 2 führen, wenn zwei Werte ausgewählt sind -
"txtContent":"=length('Some Text')"
ergibt 1 -
"txtContent":"=length('')"
ergibt 0 -
"txtContent":"=length(45)"
ergibt 1 -
"txtContent":"=length(0)"
ergibt 0
-
-
floor
: gibt die größte ganze Zahl zurück, die kleiner oder gleich einer angegebenen Zahl ist. - Nur in SharePoint Online verfügbar-
"txtContent":"=floor(45.5)"
ergibt 45
-
-
ceiling
: Rundet die angegebene Zahl auf die nächstgrößeste ganze Zahl oder ganze Zahl auf. - Nur in SharePoint Online verfügbar-
"txtContent":"=ceiling(45.5)"
ergibt 46
-
-
getDate
: gibt den Tag des Monats des angegebenen Datums zurück. - Nur in SharePoint Online verfügbar-
"txtContent":"=getDate(Date('12/26/1981'))"
ergibt 26
-
-
getMonth
: gibt den Monat am angegebenen Datum gemäß Ortszeit als nullbasierten Wert zurück (wobei null den ersten Monat des Jahres angibt). - Nur in SharePoint Online verfügbar-
"txtContent":"=getMonth(Date('12/26/1981'))"
ergibt 11
-
-
getYear
: gibt das Jahr des angegebenen Datums zurück. - Nur in SharePoint Online verfügbar-
"txtContent":"=getYear(Date('12/26/1981'))"
ergibt 1981
-
-
toUpperCase
: gibt den in Großbuchstaben konvertierten Wert zurück (funktioniert nur bei Zeichenfolgen) – nur in SharePoint Online verfügbar-
"txtContent":"=toUpperCase('DogFood')"
wird zu "DOGFOOD"
-
Binäre Operatoren: Unten sehen Sie die binären Operatoren, die zwei Operanden verwenden:
-
indexOf
: nimmt zwei Operanden an. Der erste ist der Text (oder Array), in dem Sie suchen möchten, der zweite ist der Text, nach dem Sie suchen möchten. Gibt den Indexwert des ersten Vorkommens des Suchbegriffs innerhalb der Zeichenfolge (oder Arrays) zurück. Die Indizes beginnen bei 0. Wenn der Suchbegriff nicht innerhalb des Texts (oder Arrays) gefunden wird, wird -1 zurückgegeben. Bei diesem Operator wird Groß- und Kleinschreibung unterschieden. - Nur in SharePoint Online verfügbar-
"txtContent": "=indexOf('DogFood', 'Dog')"
ergibt 0 -
"txtContent": "=indexOf('DogFood', 'F')"
ergibt 3 -
"txtContent": "=indexOf('DogFood', 'Cat')"
ergibt -1 -
"txtContent": "=indexOf('DogFood', 'f')"
ergibt -1
-
-
join
: nimmt zwei Operanden an. Der erste ist ein Array (Mehrfachauswahl für Personen und Werte), der zweite ist die trennende Zeichenfolge. Gibt eine Zeichenfolgenverkettung der Arraywerte zurück, die durch die trennende Zeichenfolge getrennt werden. - Nur in SharePoint Online verfügbar-
"txtContent": "=join(@currentField, ', ')"
kann (je nach den ausgewählten Werten) „Apfel, Orange, Kirsche“ ergeben -
"txtContent": "=join(@currentField.title, '|')"
könnte zu "Megan Bowen|Alex Wilber" (je nach ausgewählten Personen)
-
-
pow
: gibt die Basis an die Exponentenleistung zurück. - Nur in SharePoint Online verfügbar-
"txtContent":"=pow(2,3)"
wird zu 8
-
-
lastIndexOf
: gibt die Position des letzten Vorkommens eines angegebenen Werts in einer Zeichenfolge (oder einem Array) zurück.-
"txtContent": "=lastIndexOf('DogFood DogFood', 'Dog')"
wird zu 8 -
"txtContent": "=lastIndexOf('DogFood DogFood', 'F')"
wird zu 11 -
"txtContent": "=lastIndexOf('DogFood DogFood', 'Cat')"
ergibt -1 -
"txtContent": "=lastIndexOf('DogFood DogFood', 'f')"
ergibt -1
-
-
startsWith
: Bestimmt, ob eine Zeichenfolge mit den Zeichen einer angegebenen Zeichenfolge beginnt.-
"txtContent":"=startsWith('DogFood', 'Dog')"
wird zu wahr -
"txtContent":"=startsWith('DogFood', 'Food')"
wird zu falsch
-
-
endsWith
: Bestimmt, ob eine Zeichenfolge mit den Zeichen einer angegebenen Zeichenfolge endet.-
"txtContent":"=endsWith('DogFood', 'Dog')"
wird zu falsch -
"txtContent":"=endsWith('DogFood', 'Food')"
wird zu wahr
-
-
getUserImage
: Gibt eine URL zurück, die auf das Profilbild des Benutzers für eine bestimmte E-Mail und bevorzugte Größe verweist.-
"src":"=getUserImage('kaylat@contoso.com', 'small')"
gibt eine URL zurück, die auf das Profilbild des Benutzers in kleiner Auflösung verweist -
"src":"=getUserImage('kaylat@contoso.com', 's')"
gibt eine URL zurück, die auf das Profilbild des Benutzers in kleiner Auflösung verweist -
"src":"=getUserImage('kaylat@contoso.com', 'medium')"
gibt eine URL zurück, die auf das Profilbild des Benutzers in mittlerer Auflösung verweist -
"src":"=getUserImage('kaylat@contoso.com', 'm')"
gibt eine URL zurück, die auf das Profilbild des Benutzers in mittlerer Auflösung verweist -
"src":"=getUserImage('kaylat@contoso.com', 'large')"
gibt eine URL zurück, die auf das Profilbild des Benutzers in großer Auflösung verweist -
"src":"=getUserImage('kaylat@contoso.com', 'l')"
gibt eine URL zurück, die auf das Profilbild des Benutzers in großer Auflösung verweist
-
-
appendTo
: gibt ein Array mit dem angegebenen Eintrag zurück, der an das angegebene Array angefügt ist.-
"txtContent": "=appendTo(@currentField, 'Choice 4')"
gibt ein Array zurück, bei dem dem @currentField Array "Choice 4" hinzugefügt wurde. -
"txtContent": "=appendTo(@currentField, 'kaylat@contoso.com')"
gibt ein Array zurück, bei dem dem @currentField Array "kaylat@contoso.com" hinzugefügt wurde.
-
-
removeFrom
: gibt ein Array zurück, bei dem der angegebene Eintrag aus dem angegebenen Array entfernt wurde, sofern vorhanden.-
"txtContent": "=removeFrom(@currentField, 'Choice 4')"
gibt ein Array zurück, bei dem "Choice 4" aus dem @currentField Array entfernt wurde. -
"txtContent": "=removeFrom(@currentField, 'kaylat@contoso.com')"
gibt ein Array zurück, bei dem "kaylat@contoso.com" aus dem @currentField Array entfernt wurde.
-
-
split
: Unterteilt die angegebene Zeichenfolge in eine geordnete Liste von Teilzeichenfolgen, indem nach dem angegebenen Muster gesucht wird, und gibt ein Array dieser Teilzeichenfolgen zurück.-
"txtContent": "=split('Hello World', ' ')"
gibt ein Array mit zwei Zeichenfolgen zurück: "Hello" und "World"
-
-
addDays
: gibt ein datetime-Objekt mit Tagen zurück, die vom angegebenen datetime-Wert hinzugefügt (oder abgezogen wurden)-
"txtContent": "=addDays(Date('11/14/2021'), 3)"
gibt einen 17.11.2021 um 12:00:00 Uhr zurück. -
"txtContent": "=addDays(Date('11/14/2021'), -1)"
gibt einen 13.11.2021 um 12:00:00 Uhr zurück.
-
-
addMinutes
: gibt ein datetime-Objekt zurück, dessen Minuten vom angegebenen datetime-Wert hinzugefügt (oder abgezogen) werden.-
"txtContent": "=addMinutes(Date('11/14/2021'), 3)"
gibt einen 14.11.2021 um 12:03:00 Uhr zurück. -
"txtContent": "=addMinutes(Date('11/14/2021'), -1)"
gibt einen 13.11.2021 um 11:59:00 Uhr zurück.
-
Ternäre Operatoren: Folgenden Operatoren benötigen drei Operanden:
substring
: gibt den Teil der Zeichenfolge zwischen den Start- und Endindizes zurück. - Nur in SharePoint Online verfügbar-
"txtContent":"=substring('DogFood', 3, 4)"
Ergebnisse in F -
"txtContent":"=substring('DogFood', 4, 3)"
Ergebnisse in F -
"txtContent":"=substring('DogFood', 3, 6)"
Ergebnisse in Foo -
"txtContent":"=substring('DogFood', 6, 3)"
Ergebnisse in Foo
Die substring()-Methode gibt den Teil der Zeichenfolge zwischen den Anfangs- und Endindizes oder bis zum Ende der Zeichenfolge zurück.
-
replace
: Durchsucht eine Zeichenfolge (oder ein Array) nach einem angegebenen Wert und gibt eine neue Zeichenfolge (oder ein Array) zurück, in der der angegebene Wert ersetzt wird. Bei Zeichenfolgen wird nur der erste instance des Werts ersetzt.-
"txtContent":"=replace('Hello world', 'world', 'everyone')"
wird zu Hello everyone -
"txtContent":"=replace([$MultiChoiceField], 'Choice 1', 'Choice 2')"
gibt ein Array zurück, das Choice 1 durch Choice 2 ersetzt. -
"txtContent":"=replace([$MultiUserField], @me, 'kaylat@contoso.com')"
gibt ein Array zurück, das @me durch "kaylat@contoso.com" ersetzt wird.
-
replaceAll
: Durchsucht eine Zeichenfolge nach einem angegebenen Wert und gibt eine neue Zeichenfolge (oder ein Array) zurück, in der der angegebene Wert ersetzt wird. Bei Zeichenfolgen werden alle Instanzen des Werts ersetzt.-
"txtContent":"=replaceAll('H-e-l-l-o W-o-r-l-d', '-', '')"
führt zu Hallo Welt
-
padStart
: füllt die aktuelle Zeichenfolge mit einer anderen Zeichenfolge, bis die resultierende Zeichenfolge die angegebene Länge erreicht. Die Auffüllung wird ab dem Anfang der aktuellen Zeichenfolge angewendet.-
"txtContent":"=padStart('DogFood', 10, 'A')"
wird zu AAADogFood -
"txtContent":"=padStart('DogFood', 10, 'AB')"
wird zu ABADogFood -
"txtContent":"=padStart('DogFood', 5, 'A')"
wird zu DogFood
-
padEnd
: Füllt die aktuelle Zeichenfolge mit einer angegebenen Zeichenfolge auf, bis die resultierende Zeichenfolge die angegebene Länge erreicht. Die Auffüllung wird vom Ende der aktuellen Zeichenfolge an angewendet.-
"txtContent":"=padEnd('DogFood', 10, 'A')"
wird zu DogFoodAAA -
"txtContent":"=padEnd('DogFood', 10, 'AB')"
wird zu DogFoodABA -
"txtContent":"=padEnd('DogFood', 5, 'A')"
wird zu DogFood
-
getThumbnailImage
: Gibt eine URL zurück, die auf ein Bild für ein bestimmtes Bildfeld und die bevorzugte Größe verweist.-
"src":"=getThumbnailImage([$ImageField], 400, 200)"
führt zu einer URL, die auf ein Bild für ein bestimmtes Bildfeld mit 400 Breite und 200 Höhe verweist
-
Bedingter Operator: Unten sehen Sie den bedingten Operator:
-
?
: Bedingte Operatoren, die in der abstrakten Struktursyntax geschrieben werden, verwenden?
als Operator. Dies ist, um einen Ausdruck zua ? b : c
erreichen, der entspricht, wobei, wenn der Ausdrucka
als true ausgewertet wird, das Ergebnis istb
, andernfalls istc
das Ergebnis . Für Ausdrücke im Excel-Stil schreiben Sie diese mit einerif
-Anweisung. Unabhängig davon gibt es drei Operanden. Der erste ist die auszuwertende Bedingung. Der erste ist das Ergebnis, wenn die Bedingung „true“ ist. Der zweite ist das Ergebnis, wenn die Bedingung „false“ ist.-
"txtContent":"=if(4 < 5, 'yes', 'no')"
ergibt ja -
"txtContent":"=if(4 > 5, 'yes', 'no')"
ergibt nein
-
Mehrwertfeldbezogene Operatoren : Die folgenden Operatoren werden nur in einem Kontext mit mehrwertigen Feldern vom Typ Person, Lookup oder Choice verwendet.
length
join
loopIndex
length
gibt bei Angabe eines Feldnamens die Anzahl der Elemente in einem mehrwertigen Feld zurück. Wenn ein Feld mit nur einem Wert bereitgestellt wird, gibt 1 zurück, length
wenn ein Wert in diesem Feld vorhanden ist.
join
verkettet Werte in einem mehrwertigen Feld mit einem angegebenen Trennzeichen. Der erste Operand zeigt auf einen Wert in einem mehrwertigen Feld, z. B "@currentField.lookupValue"
. , "[$AssignedTo.title]"
. Der zweite Operand muss ein Zeichenfolgenliteral sein, welches das Trennzeichen ist, das die Werte miteinander verkettet.
loopIndex
gibt den aktuellen Index (beginnend mit 0) des Iterators zurück, wenn er mit dem Namen der Iteratorvariablen angegeben wird. Der Name des Iterators muss als Zeichenfolgenliteral angegeben werden.
loopIndex
funktioniert nur innerhalb des Elements mit aktiviertem forEach
oder seinen untergeordneten Elementen.
Beispiele finden Sie unter Formatieren von Mehrwertfeldern.
Zeichenfolgenbezogene Operatoren : Einige der zuvor detaillierten Operatoren können beim Arbeiten mit Zeichenfolgenwerten verwendet werden:
+
-
indexOf
(für Problemumgehung der Länge von Zeichenfolgen)
+
kann verwendet werden, wenn Zeichenfolgen verkettet werden müssen, für instance:
"txtContent": "=[$column1] + ' ' + [$column2] + 'some other text'"
indexOf
Da der Operator length
nicht für Zeichenfolgenwerttypen funktioniert (er gibt 1 oder 0 zurück), indexOf
kann uns als eine gute Problemumgehung dienen, um die Länge einer Zeichenfolge für instance abzurufen: indexOf([$column1] + '^', '^')
. Wir verwenden '^'
oder ein beliebiges anderes Zeichen, um das Ende der Zeichenfolge zu ermitteln.
Operanden
Gibt die Parameter (Operanden) eines Ausdrucks an. Konkret handelt es sich um ein Array von Objekten des Typs „Expression“ oder von Basiswerten.
Spezialzeichenfolgenwerte
Die Werte für txtContent
, Formatvorlagen und Attribute können entweder Zeichenfolgen oder Objekte des Typs „Expression“ sein. Daneben werden zum Abrufen von Werten aus Listenfeldern und dem Benutzerkontext einige spezielle Zeichenfolgenmuster unterstützt.
„@currentField“
Wertet den Wert des aktuellen Felds aus.
Einige Feldtypen werden als Objekte dargestellt. Zum Abrufen eines Werts aus einem Objekt verweisen Sie auf eine Eigenschaft innerhalb des Objekts. Beispiel: Ist das aktuelle Feld ein Personen- oder Gruppenfeld, würden Sie @currentField.title
angeben, um den Namen der Person abzurufen, wie er in der Regel in Listenansichten angezeigt wird. Nachfolgend sind die Feldtypen aufgeführt, die als Objekte dargestellt werden, inklusive einer Liste ihrer jeweiligen Eigenschaften.
Hinweis
@currentField.title
gibt standardmäßig den Namen einer Person zurück. Wenn jedoch der Wert „Show Field“ des Personenfelds angepasst wurde, wird möglicherweise der Wert der Eigenschaft title
geändert. Wird zum Beispiel der Wert „Show Field“ eines Personenfelds als „Abteilung“ konfiguriert, erhält die Eigenschaft title
als Wert die Abteilung der Person.
Personenfelder
Das Objekte des Personenfelds verfügt über die folgenden Eigenschaften (es sind auch Beispiele aufgeführt):
{
"id": "122",
"title": "Kalya Tucker",
"email": "kaylat@contoso.com",
"sip": "kaylat@contoso.com",
"picture": "https://contoso.sharepoint.com/kaylat_contoso_com_MThumb.jpg?t=63576928822",
"department":"Human Resources",
"jobTitle":"HR Manager"
}
Das Feld "Personen" kann Profil-Hoverkarten zusammen mit der Formatierung aufweisen:
{
"elmType": "div",
"txtContent": "[$Editor.title]",
"defaultHoverField": "[$Editor]"
}
Datum/Uhrzeit-Felder
Es gibt mehrere Möglichkeiten, den Wert eines Datum/Uhrzeit-Felds abzurufen, je nachdem, welches Datumsformat angezeigt werden soll. Unterstützt werden die folgenden Methoden zur Konvertierung von Datumswerten in bestimmte Formate:
-
toLocaleString()
: Gibt einen komplett erweiterten Datentyp mit Datum und Uhrzeit aus. -
toLocaleDateString()
: Gibt einen Datentyp aus, der nur das Datum anzeigt. -
toLocaleTimeString()
: Gibt einen Datentyp aus, der nur die Uhrzeit anzeigt.
Der folgende JSON-Code beispielsweise würde das aktuelle Feld als Datum/Uhrzeit-Zeichenfolge anzeigen (sofern es sich um ein Datumsfeld handelt).
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "div",
"txtContent": {
"operator": "toLocaleString()",
"operands" : ["@currentField"]
}
}
Hier sehen Sie das gleiche Beispiel wie oben unter Verwendung der Ausdruckssyntax im Excel-Format:
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "div",
"txtContent": "=toLocaleString(@currentField)"
}
Standortfelder
Das Standortfeld-Objekt verfügt über die folgenden Eigenschaften (es sind auch Beispiele aufgeführt):
{
"Address": {
"City": "Knoxville",
"CountryOrRegion": "United States",
"State": "TN",
"Street": "963 Worlds Fair Park Dr"
},
"Coordinates": {
"Latitude": "35.961673736572266",
"Longitude": "-83.92420959472656"
},
"DisplayName": "World's Fair Park",
"LocationUri": "https://www.bingapis.com/api/v6/localentities/8346bf26-6da4-104c-6ba5-2334b83f6ac8?setLang=en"
}
Das folgende Beispiel demonstriert die Anwendung eines Standortfelds auf ein aktuelles Feld.
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json",
"elmType": "div",
"style": {
"display": "block"
},
"children": [
{
"elmType": "a",
"txtContent": "@currentField.DisplayName",
"attributes": {
"href": "='https://www.bing.com/maps?cp=' + @currentField.Coordinates.Latitude + '~' + @currentField.Coordinates.Longitude + '&lvl=17&sV=2'",
"target": "_blank",
"title": "=@currentField.Coordinates.Latitude + ', ' + @currentField.Coordinates.Longitude"
},
"style": {
"display": "block"
}
},
{
"elmType": "div",
"txtContent": "@currentField.Address.Street"
},
{
"elmType": "div",
"txtContent": "=@currentField.Address.City + ', ' + @currentField.Address.State"
},
{
"elmType": "div",
"txtContent": "@currentField.Address.CountryOrRegion"
}
]
}
Nachschlagefelder
Das Objekte des Nachschlagefelds verfügt über die folgenden Eigenschaften (es sind auch Beispiele aufgeführt):
{
"lookupId": "100",
"lookupValue": "North America",
}
Das folgende Beispiel demonstriert die Anwendung eines Nachschlagefelds auf ein aktuelles Feld.
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "a",
"txtContent": "@currentField.lookupValue",
"attributes": {
"href": {
"operator": "+",
"operands": [
"https://contoso.sharepoint.com/teams/Discovery/Lists/Regions/DispForm.aspx?ID=",
"@currentField.lookupId"
]
},
"target": "_blank"
}
}
Linkfelder
Das Objekte des Linkfelds verfügt über die folgende Eigenschaft (es ist auch ein Beispiel aufgeführt):
{
"desc": "SharePoint Patterns and Practices",
}
Um auf den URL-Wert zu verweisen, verwenden Sie @currentField
.
Das folgende Beispiel demonstriert die Anwendung eines Linkfelds auf ein aktuelles Feld.
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "a",
"txtContent": "@currentField.desc",
"attributes": {
"href": "@currentField",
"target": "_blank"
}
}
Bildfelder
Das Bildfeldobjekt verfügt über die folgende fileName
Eigenschaft:
{
"fileName": "image.png",
}
Hinweis
Ab Juli 2024 hat nur die fileName
Eigenschaft einen Wert.
Das folgende Beispiel zeigt, wie ein Bildfeld auf ein aktuelles Feld angewendet werden kann.
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "img",
"attributes": {
"src": "=getThumbnailImage(@currentField, 400, 300)",
"alt": "@currentField.fileName"
},
"style": {
"width": "100%",
"max-width": "100%"
}
}
Genehmigungsstatusfelder
Das Feldobjekt "Genehmigungsstatus" weist die folgende Eigenschaft auf (mit Beispielwert):
{
"displayValue": "Approved",
"numeric": 0
}
displayValue
ist eine lokalisierte Zeichenfolge des Genehmigungs-status.
@currentField
oder [$__ModerationStatus]
wird auch intern dem folgenden internen numerischen Wert zugeordnet:
- 0: Genehmigt
- 1: Verweigert
- 2: Ausstehend
- 3: Entwurf
- 4: Geplant
[$_ModerationStatus]
-Feld unterstützt Vergleiche sowohl mit Zeichenfolgen als auch mit dem numerischen Wert. Die numerischen Vergleiche funktionieren über Gebietsschemas und Sprachen hinweg. Dies ist die empfohlene Methode für dieses Feld.
Die folgenden Ausdrücke werden in die Ausgabe auf der rechten Seite ausgewertet, wenn der Status Pending
ist:
// reading field value
"[$_ModerationStatus]" => "Pending"
// obtaining the internal numeric value:
"=Number([$_ModerationStatus])" => 2
"=[$_ModerationStatus.numeric]" => 2
// addition results in string concatenation:
"='status:'+[$_ModerationStatus]" => 'status:Pending'
// numeric comparisons
"=([$_ModerationStatus] == 2)" => true
"=([$_ModerationStatus] != 1)" => true
// other comparators are rarely useful, for cases where you want might want to exclude Draft & Scheduled
"=([$_ModerationStatus] < 3)" => true
// localized string comparison, works only with one locale (en-us here)
"=if([$_ModerationStatus]=='Pending','This Works too!', 'Nope!')" => 'This Works too!'
Das folgende Beispiel zeigt, wie eine Genehmigung status Feld für ein aktuelles Feld verwendet werden kann:
{
"elmType": "div",
"txtContent": "@currentField.displayValue",
"style": {
"color": "=if(@currentField == 2, 'red', '')"
}
}
„[$FieldName]“
Die Spalte wird im Kontext der gesamten Zeile formatiert. Sie können diesen Kontext verwenden, um auf die Werte der anderen Felder in derselben Zeile verweisen, durch Angeben der internen Namen des Felds, umgeben von eckigen Klammern und mit einem vorangestellten Dollarzeichen: [$InternalName]
. Beispiel: Zum Abrufen des Werts eines Felds mit dem internen Namen „MarchSales“ würden Sie [$MarchSales]
verwenden.
Hinweis
Verweise auf andere Felder funktionieren nur, wenn sie in derselben Ansicht enthalten sind.
Ist der Wert eines Felds ein Objekt, können Sie auf die Eigenschaften dieses Objekts zugreifen. Wenn Sie z. B. auf die Eigenschaft „Titel“ eines Personenfelds mit dem Namen „SalesLead“ zugreifen möchten, verwenden Sie „[$SalesLead.title]“.
"[!FieldName]"
In der Spalten- und Ansichtsformatierung können Sie auf die Metadaten eines beliebigen Felds verweisen, indem Sie den internen Namen des Felds angeben, das von eckigen Klammern umgeben ist und vor dem ein Ausrufezeichen steht: [!InternalName]
.
Der Anzeigename des Felds ist derzeit in diesen Metadaten verfügbar und kann mithilfe der DisplayName
Eigenschaft aufgerufen werden: [!SalesLead.DisplayName]
.
„@currentWeb“
Dadurch wird die absolute URL für die Website ausgewertet. Dies entspricht dem Wert webAbsoluteUrl
im Kontext der Seite. Dieser Wert ist nur in SharePoint Online verfügbar.
„@me“
Dadurch wird die E-Mail-Adresse des aktuell angemeldeten Benutzers ausgewertet.
Dieses Feld kann verwendet werden, um die aktuelle E-Mail-Adresse des Benutzers anzuzeigen, aber viel wahrscheinlicher wird es unter Bedingungen verwendet. Im Folgenden finden Sie ein Beispiel für das Festlegen der Farbe für ein Personenfeld auf Rot, wenn es dem aktuell angemeldeten Benutzer entspricht, andernfalls blau:
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "div",
"txtContent": "@currentField.title",
"style": {
"color": {
"operator": "?",
"operands": [
{
"operator": "==",
"operands": [
"@me",
"@currentField.email"
]
},
"red",
"blue"
]
}
}
}
Hier sehen Sie das gleiche Beispiel wie oben unter Verwendung der Ausdruckssyntax im Excel-Format:
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "div",
"txtContent": "@currentField.title",
"style": {
"color": "=if(@me == @currentField.email, 'red', 'blue')"
}
}
„@now“
Dadurch werden das aktuelle Datum und die aktuelle Uhrzeit ausgewertet.
"@rowIndex"
Dadurch wird der gerenderte Index einer Zeile innerhalb einer Ansicht ausgewertet. Dieser Wert basiert auf der Renderposition und bleibt auch bei sortierten und gefilterten Ansichten basierend auf der Position konsistent. Die Indizes beginnen bei 0. Dieser Wert ist nur in SharePoint Online verfügbar.
Hier ist ein Beispiel für die Verwendung des Werts innerhalb eines Ansichtsformats, um abwechselnde Formatvorlagen auf Zeilen anzuwenden:
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/view-formatting.schema.json",
"additionalRowClass": "=if(@rowIndex % 2 == 0,'ms-bgColor-themeLighter ms-bgColor-themeLight--hover','')"
}
„@window.innerHeight“
Dies wird auf eine Zahl ausgewertet, die der Höhe des Browserfensters (in Pixeln) entspricht, wenn die Liste gerendert wird.
„@window.innerWidth“
So wird eine Zahl berechnet, die der Breite des Browserfensters (in Pixel) entspricht, als die Liste erstellt wurde.
Miniaturbilder
In einer Dokumentbibliothek gibt es eine Reihe von Token, die verwendet werden können, um die URL zur Miniaturansicht einer Datei abzurufen, einschließlich:
-
@thumbnail.small
,@thumbnail.medium
und@thumbnail.large
werten die Miniaturansichts-URL in drei vordefinierten Größen aus. -
@thumbnail.<bounding size>
wertet die URL auf die größte Miniaturansicht aus, die nicht größer als die Begrenzungsgröße in Breite und Höhe ist.@thumbnail.150
wird z. B. zur URL zu einem Miniaturbild ausgewertet, das nicht größer als 150 × 150 Pixel ist. -
@thumbnail.<bounding width>x<bounding height>
wertet die URL auf die größte Miniaturansicht aus, die nicht größer als die begrenzungsende Breite und begrenzungshöhe ist.@thumbnail.100x200
wird z. B. zur URL zu einem Miniaturbild ausgewertet, das nicht breiter als 100 Pixel und nicht höher als 200 Pixel ist.
Diese Token liefern keinen Wert für Elemente, die keine Dateien sind (z. B. Ordner).
Hinweis
Das Seitenverhältnis der generierten Miniaturansicht entspricht dem Aussehen der Datei. Eine Änderung der Begrenzungsgrößen wirkt sich nicht auf das Seitenverhältnis der Miniaturansicht aus.
Tipp
Miniaturbilder sind nur für eine Liste der unterstützten Dateiformate verfügbar. Das bedeutet, dass die generierte URL manchmal aufgrund mangelnder Unterstützung für bestimmte Formate nicht zugänglich ist. Wenn jedoch ein gültiges Miniaturansichtstoken als einzigessrc
Attribut eines img
Tags festgelegt ist, kümmern wir uns darum und blenden das Bild aus, wenn es nicht verfügbar ist.
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "img",
"attributes": {
"src": "@thumbnail.200x150",
"alt": "='Thumbnail of file ' + [$FileLeafRef]"
},
"style": {
"width": "100%",
"max-width": "100%"
}
}
Standard-Dateihoverkarte mit „FileLeafRef“
{
"elmType": "img",
"style": {
"width": "100%",
"height": "100%",
"display": "=if([$File_x0020_Type] == '', 'none', '')"
},
"attributes": {
"src": "@thumbnail.300x300"
},
"defaultHoverField": "[$FileLeafRef]"
}
displayValue
Die folgenden Spaltentypen können die -Eigenschaft verwenden displayValue
, um den standardmäßig gerenderten Wert basierend auf der Spalteneinstellung abzurufen:
- Datum/Uhrzeit
- Zahl
- Ja/Nein
- Währung
- Genehmigungsstatus
{
"elmType": "div",
"txtContent": "@currentField.displayValue"
}
Dies funktioniert auch mit Dem Feldnamen:
{
"elmType": "div",
"txtContent": "[$FieldName.displayValue]"
}
"@isSelected"
Dies wird für die ausgewählten Elemente in einer Ansicht als true
ausgewertet und false
andernfalls.
"@lcid"
Dadurch wird die LCID der aktuellen Kultur ausgewertet. Dies kann zum Formatieren von Datum, Uhrzeit und Zahlen verwendet werden.
"@UIlcid"
Dadurch wird die LCID der aktuellen Benutzeroberflächenkultur ausgewertet. Dies kann verwendet werden, um lokalisierte Anzeigezeichenfolgen anzuzeigen.