Как разбить большую страницу на маленькие кусочки и сохранить макет страницы? - PullRequest
0 голосов
/ 18 апреля 2011

все!Я пишу страницу, состоящую из tabview и панелей.В A есть несколько панелей типа xhtmls.

   Tabview.xhtml:
       <p:tabView>
            <p:tab title="1">
               <ui:include src="/Apanel.xhtml"/>
            </p:tab>
            <p:tab title="2">
               <ui:include src="/Bpanel.xhtml"/>
            </p:tab>
            <p:tab title="3">
               <ui:include src="/Cpanel.xhtml"/>
            </p:tab>
            <p:tab title="4">
               <ui:include src="/Dpanel.xhtml"/>
            </p:tab>
            <p:tab title="5">
               <ui:include src="/Epanel.xhtml"/>
            </p:tab>
        </p:tabView>

    Apanel.xhtml:
      <p:panel>
         <ui:include src="/A1.xhtml"/>
      </p:panel>
      <p:panel>
         <ui:include src="/A2.xhtml"/>
      </p:panel>

Так что на этой странице много html и js кода.Производительность страницы ужасна, даже реакция на нажатие флажка очень медленная!Но макет удобен для пользователей системы.Существуют ли способы достижения эффекта, который пользователь работает на странице A1, другие страницы не загружаются или другие страницы вкладок не загружаются.Заранее спасибо!

1 Ответ

1 голос
/ 18 апреля 2011

Я могу подтвердить, что производительность панелей Primefaces (например, панелей пользовательского интерфейса Yahoo) ужасна.

Так что вместо этого вы можете использовать классический HTML + CSS и иметь отдельную страницу для каждой вкладки. Это немного больше ручной работы, чем просто сбросить p:panel на вашей странице, но в итоге это действительно окупается.

Я знаю, что это не звучит как "хороший дизайн", но приложение JSF больше похоже на веб-страницу, чем на богатый клиентский графический интерфейс, поэтому принципы дизайна разные. По крайней мере, таков мой опыт - однажды надев шляпу для веб-дизайнера, JSF + Primefaces стал молниеносным решением, которое сработало очень хорошо и соответствовало моим ожиданиям.

...