我对Tapestry页面和模板有疑问。
用户发送获取页面的请求。我认识到请求来自移动或桌面。我想显示一个不同布局的请求页面。
例如:
如果请求来自移动设备,我想加载mobileLayout.tml和pages / mobile / index.tml,那个index.tml有t:type =“mobilelayout”。
如果它来自桌面设备我想加载layout.tml和pages / index.tml,那个index.tml有t:type =“layout”。
示例:
仅针对桌面设备显示页面页面/ index.tml。
仅针对移动设备显示页面/ mobile / index.tml。
我想加载mobileLayout和pages / mobile / index.tml
请求的页面:/ index
基本上对于移动设备我想从页面/移动设备获取内容,否则从页面/.
获取在Tapestry5(5.3.6)中是否可以这样?
我尝试了类似下面的内容,但没有成功:
LayoutLoader.tml - 我知道请求的来源。
<t:delegate to="layout" />
<t:block t:id="mobileLayout">
<t:mobileLayout />
</t:block>
<t:block t:id="desktopLayout">
<t:layout />
</t:block>
组件/ Layout.tml
<body t:type="layoutloader">...</body>
组件/ MobileLayout.tml
<body t:type="layoutloader">...</body>
页/ Index.tml
<div t:type="layout">...</div>
页/移动/ Index.tml
<div t:type="mobileLayout">...</div>
答案 0 :(得分:1)
您可能会发现Igor的博客文章很有趣http://blog.tapestry5.de/index.php/2011/06/24/template-skinning/