我是liferay中的新手,在我的portlet中我有带有angularJs而不是jsp的html页面。我会询问如何在这些html页面之间导航到我的portlet中...谢谢。
答案 0 :(得分:1)
我认为你对技术有点混乱。
JSP页面始终为您的浏览器生成HTML页面。 这意味着你创建一个只包含HTML的JSP页面没有任何变化(从开发人员的角度来看这是正确的......想到服务器工作这不是真的......但是我认为这是真的。)
您将要使用的客户端技术与portlet的观点无关(如果您的主题使用一些不兼容的库,则可能会出现问题...)但通常使用的是您使用的库(angularjs) ,骨干等。)。
这意味着你可以创建包含你想要的所有angularjs代码的html或jsp页面......并且everithing应该可以正常工作。
如果您想在同一个portler中管理“页面”之间的导航(例如从view.html到details.html),那么您必须考虑,简化Portlet没有页面:您的portlet将被添加到门户网站的页面(有自己的URL)。 所以你可以在jsp文件中重命名你的html文件(正如我所说,没有任何变化),然后你可以告诉门户网站JSP代码加载的正确URL是什么。
例如,要在“view.jsp”中创建指向“details.jsp”的链接,您可以编写如下代码:
<a href="<portlet:renderURL>
<portlet:param name="jspPage" value="/path/to/your/details.jsp" />
</portlet:renderURL>">Text</a>
显然,您可以在任何地方使用<portlet:renderURL>...</portlet:renderURL>
代码...因为它会在发送到浏览器之前以字符串形式翻译...就像在javascript var url = "<portlet:renderURL>....</portlet:renderURL>"
你不应该忘记将这些行放在你的jsp文件的开头:
<%@ taglib uri="http://java.sun.com/portlet" prefix="portlet" %>
<portlet:defineObjects />