我正在使用ng-include指令在IBM websphere Portlet中包含部分视图。代码片段在下面
1.定义渲染网址
<portlet:defineObjects />
<portlet:renderURL var="resourceURL" windowState="MINIMIZED" portletMode="view">
<portlet:param name="jspPage" value="/partials/list.html" />
</portlet:renderURL>
2.Main.js
<script>
var myApp = angular.module("App", []);
myApp.controller("myCtrl", function ($scope )
{
$scope.page='<%=resourceURL%>';
});
</script>
3.Home.jsp
<div id="<portlet:namespace />main" data-ng-app="App" data-ng-controller="myCtrl" >
<div ng-include src="'page'"></div>
<div>
但不包括部分内容。任何人都可以建议我如何解决这个问题吗?我错过了什么吗?
答案 0 :(得分:0)
您需要更改代码以转到portlet上下文路径:
替换:
<%=resourceURL%>
带
<%=renderResponse.encodeURL(renderRequest.getContextPath():%>
这将有效:
<div ng-include="'<%= renderResponse.encodeURL(renderRequest.getContextPath() + "/scripts/mypage.tpl.html") %>'"></div>