Групповые конфигурации компонентов AEM (6.2) - PullRequest
0 голосов
/ 08 марта 2019

В настоящее время я создаю компонент, который имеет свойства конфигурации TouchUI, разделенные тремя вкладками (Стандарт, CASL, GDPR).Каждая вкладка имеет один и тот же набор доступных параметров, и мои текущие имена конфигурации похожи на следующие:

./standardMarketingText
./standardThirdpartyText
./gdprMarketingText
./gdprThirdpartyText
./caslMarketingText
./caslThirdpartyText

(есть несколько других параметров для стандартных, gdpr, casl, но я их опущил для краткости)

Хотя это работает, я надеюсь вместо этого сохранить значения в JCR как узел JSON для каждой категории.Например:

casl = {"marketingText"="m test", "thirdpartyText"="tp test"}
gdpr = {"marketingText"="gdpr m test", "thirdpartyText"="gdpr tp test"}

Таким образом, я могу загружать все опции "casl" (или другие) сразу, когда они мне нужны (нет случая, когда я бы загружал только одну опцию "casl")

Я попытался использовать гранит / пользовательский интерфейс / компоненты / фундамент / форма / мультиполе, однако он просит "Добавить поле".Мне нужен только один набор каждого из них, и я не предоставляю возможность добавлять другой набор свойств под каждую вкладку.Есть ли способ сделать это, не переопределяя multiTield resourceType?

1 Ответ

0 голосов
/ 10 марта 2019

Есть несколько способов достичь того, на что вы смотрите, я бы посмотрел на возможность повторного использования, так как есть похожие именованные свойства для разных категорий (на вкладках вашего случая). Чтобы сгруппировать их, вы можете сделать это на уровне узла, правильно определив свойство name для каждой вкладки.

Для указанных выше значений вы можете сделать что-то вроде -

./standard/marketingText
./standard/thirdpartyText
./gdpr/marketingText
./gdpr/thirdpartyText
./casl/marketingText
./casl/thirdpartyText

Каждая ваша вкладка хранит свойства в именованном узле (standard, gdpr, casl). Кроме того, у вас может быть один SlingModel / WCMUsePojo, который может адаптироваться к этим узлам, чтобы предоставить Pojo доступ к значениям свойств.

Что касается получения JSON, ваш SlingModel или WCMUsePojo может предоставить метод для возврата значений, основанных на JSON, для значений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...