JSON 在图片旁边添加文字
JSON add text next to image
我是 JSON 的新手,坦率地说,我不确定如何正确设置我的代码。
目标
使用国家/地区标志格式化 SharePoint 列并在其旁边显示 @currentField
。
当前代码
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json",
"elmType": "div",
"children": [
{
"elmType": "img",
"attributes": {
"src": "='https://flagpedia.net/data/flags/h20/'+if(@currentField == 'AR','ar',if(@currentField == 'AT','at',if(@currentField == 'AU','au',if(@currentField == 'BE','be',if(@currentField == 'BG','bg',if(@currentField == 'BR','br',if(@currentField == 'BY','by',if(@currentField == 'CA','ca',if(@currentField == 'CH','ch',if(@currentField == 'CM','cm',if(@currentField == 'CN','cn',if(@currentField == 'CO','co',if(@currentField == 'CZ','cz',if(@currentField == 'DE','de',if(@currentField == 'DK','dk',if(@currentField == 'EC','ec',if(@currentField == 'EE','ee',if(@currentField == 'EG','eg',if(@currentField == 'ES','es',if(@currentField == 'FI','fi',if(@currentField == 'FR','fr',if(@currentField == 'GB','gb',if(@currentField == 'GR','gb',if(@currentField == 'GR','gr',if(@currentField == 'HR','hr',if(@currentField == 'HU','hu',if(@currentField == 'IE','ie',if(@currentField == 'IL','il',if(@currentField == 'IN','in',if(@currentField == 'IT','it',if(@currentField == 'LT','lt',if(@currentField == 'LU','lu',if(@currentField == 'LV','lv',if(@currentField == 'MX','mx',if(@currentField == 'NL','nl',if(@currentField == 'NO','no',if(@currentField == 'PA','pa',if(@currentField == 'PE','pe',if(@currentField == 'PL','pl',if(@currentField == 'PT','pt',,if(@currentField == 'RO','ro',if(@currentField == 'RU','ru',if(@currentField == 'SE','se',if(@currentField == 'SK','sk',if(@currentField == 'TR','tr',if(@currentField == 'US','us',if(@currentField == 'UY','uy',if(@currentField == 'ZA','za','no'))))))))))))))))))))))))))))))))))))))))))))))+ '.png'",
"title": "@currentField"
}
}
]
}
我知道这很麻烦,但这是我知道如何实现我所追求的第一部分的唯一方法,因为我对 JSON 一点都不擅长。这段代码为正确的值提供了正确的图像,尽管我确信它可以更容易地完成。
我将此代码应用于列的格式部分,以将输入的 alpha2 国家/地区代码显示为相应的国家/地区标志。它工作正常,但我也希望在图像旁边显示 @currentField
的值,而不是用标志“覆盖”。
我会 post 我到目前为止尝试过的方法,但坦率地说,我不知道从哪里开始。寻找任何指向正确方向的指示,这样我才能弄清楚如何前进。
我假设提交的值是 alpha2 国家代码,所以我最后做了一个测试 JSON 并且工作正常。试一试,如果有任何问题请告诉我。
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "div",
"children": [
{
"elmType":"img",
"attributes": {
"src": "='https://flagpedia.net/data/flags/h20/'+ toLowerCase(@currentField)+'.png'"
}
},
{
"elmType": "span",
"txtContent": "@currentField",
"style": {
"padding-left": "6px",
"white-space": "nowrap",
"text-transform": "uppercase"
}
}
]
}
如下所示:
原图:
我是 JSON 的新手,坦率地说,我不确定如何正确设置我的代码。
目标
使用国家/地区标志格式化 SharePoint 列并在其旁边显示 @currentField
。
当前代码
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json",
"elmType": "div",
"children": [
{
"elmType": "img",
"attributes": {
"src": "='https://flagpedia.net/data/flags/h20/'+if(@currentField == 'AR','ar',if(@currentField == 'AT','at',if(@currentField == 'AU','au',if(@currentField == 'BE','be',if(@currentField == 'BG','bg',if(@currentField == 'BR','br',if(@currentField == 'BY','by',if(@currentField == 'CA','ca',if(@currentField == 'CH','ch',if(@currentField == 'CM','cm',if(@currentField == 'CN','cn',if(@currentField == 'CO','co',if(@currentField == 'CZ','cz',if(@currentField == 'DE','de',if(@currentField == 'DK','dk',if(@currentField == 'EC','ec',if(@currentField == 'EE','ee',if(@currentField == 'EG','eg',if(@currentField == 'ES','es',if(@currentField == 'FI','fi',if(@currentField == 'FR','fr',if(@currentField == 'GB','gb',if(@currentField == 'GR','gb',if(@currentField == 'GR','gr',if(@currentField == 'HR','hr',if(@currentField == 'HU','hu',if(@currentField == 'IE','ie',if(@currentField == 'IL','il',if(@currentField == 'IN','in',if(@currentField == 'IT','it',if(@currentField == 'LT','lt',if(@currentField == 'LU','lu',if(@currentField == 'LV','lv',if(@currentField == 'MX','mx',if(@currentField == 'NL','nl',if(@currentField == 'NO','no',if(@currentField == 'PA','pa',if(@currentField == 'PE','pe',if(@currentField == 'PL','pl',if(@currentField == 'PT','pt',,if(@currentField == 'RO','ro',if(@currentField == 'RU','ru',if(@currentField == 'SE','se',if(@currentField == 'SK','sk',if(@currentField == 'TR','tr',if(@currentField == 'US','us',if(@currentField == 'UY','uy',if(@currentField == 'ZA','za','no'))))))))))))))))))))))))))))))))))))))))))))))+ '.png'",
"title": "@currentField"
}
}
]
}
我知道这很麻烦,但这是我知道如何实现我所追求的第一部分的唯一方法,因为我对 JSON 一点都不擅长。这段代码为正确的值提供了正确的图像,尽管我确信它可以更容易地完成。
我将此代码应用于列的格式部分,以将输入的 alpha2 国家/地区代码显示为相应的国家/地区标志。它工作正常,但我也希望在图像旁边显示 @currentField
的值,而不是用标志“覆盖”。
我会 post 我到目前为止尝试过的方法,但坦率地说,我不知道从哪里开始。寻找任何指向正确方向的指示,这样我才能弄清楚如何前进。
我假设提交的值是 alpha2 国家代码,所以我最后做了一个测试 JSON 并且工作正常。试一试,如果有任何问题请告诉我。
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "div",
"children": [
{
"elmType":"img",
"attributes": {
"src": "='https://flagpedia.net/data/flags/h20/'+ toLowerCase(@currentField)+'.png'"
}
},
{
"elmType": "span",
"txtContent": "@currentField",
"style": {
"padding-left": "6px",
"white-space": "nowrap",
"text-transform": "uppercase"
}
}
]
}
如下所示:
原图: