2016-09-28 7 views
0

У меня есть требование, чтобы шаблон содержал в нем предварительно определенный компонент. После создания страницы все эти компоненты должны быть перемещены или могут быть удалены. Также он содержит парсины.Один компонент отображается дважды на странице

Этот номер завершен. Но я столкнулся с одной проблемой. Если я упоминаю в моем коде, как

<sly data-sly-resource="${'content' @ resourceType='wcm/foundation/components/parsys'}" data-sly-unwrap="true"></sly> 

Я получаю тот же компонент дважды странице.

Если я упоминаю что-то другое вместо содержания, он работает нормально.

Может ли кто-нибудь помочь мне в этом.

Этот образец кода, который я использую.

<div class="sample1"><sly data-sly-resource="${'content/sample1' @ resourceType=''}" data-sly-unwrap/></div> 

<div class="sample2"><sly data-sly-resource="${'content/sample2' @ resourceType=''}" data-sly-unwrap/></div> 
<sly data-sly-resource="${'content' @ resourceType='wcm/foundation/components/parsys'}" data-sly-unwrap="true"></sly> 

ответ

0

Компоненты, вероятно, появляется в два раза по следующим причинам

  1. После того, как из data-sly-resource="${'content/sample2' @ resourceType=''}" вызова, который включает в себя их непосредственно.
  2. После рендеринга content parsys. Parsys - это компонентный тип, который автоматически отображает все его дочерние элементы.

Если вы пытаетесь настроить, какие компоненты существуют на странице при ее создании, я бы посмотрел на использование Template.


сторона отмечает

  • Если вы используете <sly></sly> тег, вам не нужно включать data-sly-unwrap. Sly теги автоматически разворачиваются.
  • Вместо того <div><sly data-sly-resource="..."></sly></div> вы можете поместить data-sly атрибуты непосредственно на DIV: <div class="sample2" data-sly-resource="${'content/sample2' @ resourceType=''}"></div>
+0

Спасибо за обновление. Я включил тип resouce компонента в создание шаблона и был ресурсом данных. Из-за этого компонент загружался дважды. Я не знал об этом. –

0

'content' часть фактически используются в качестве @path параметра, который означает, что ресурс с именем content будет включен с использованием данного @resourceType.

Возможно, вы дважды включили этот компонент в свой компонент, который привел к тому, что компоненты, помещенные в эти парсы, показаны дважды.

У каждого парсинга должен быть свой уникальный путь.

<!--first parsys--> 
<sly data-sly-resource="${@path = 'content1', 
    @resourceType='wcm/foundation/components/parsys'}" data-sly-unwrap="true"></sly> 

<!--second parsys--> 
<sly data-sly-resource="${@path = 'content2', 
    @resourceType='wcm/foundation/components/parsys'}" data-sly-unwrap="true"></sly> 
+0

Я добавил небольшой пример кода, который мы использовали. Я не упоминаю контент дважды. Здесь у нас много компонентов, и только для одного компонента я столкнулся с этой проблемой. –

+0

@NaveenSakhare вы говорите, что это не отвечало на ваш вопрос? Если это так, кажется, вы случайно приняли этот ответ, хотя он не отвечает на ваш вопрос. –

 Смежные вопросы

  • Нет связанных вопросов^_^