0

我搜索了创建多页(物理页面,如 index.jsp、page1.jsp、page2.jsp 等),但没有发现任何有用的东西。所以我开始尝试自己实现。

我以以下名称创建了单独的 jsp/html 文件 index.jsp(包含仪表板页面)、客户、page2 等。我为每个页面创建了单独的路由器,以在该单个页面内路由各种视图。

我创建了一个像下面这样的顶部菜单栏。

<ul>
    <li><a href='index.jsp' class="dashboard">Dashboard</a></li>
    <li><a href="customer.jsp">customer</a></li>
    <li><a href="page2.jsp">Page2</a></li>
    <li><a href="page3.jsp">Page3</a></li>
<ul>

当我单击那些“li”时页面加载正常,并且我有两个按钮来列出客户并在客户页面中创建新客户,单击该按钮时我路由到客户/列表(customer.jsp#customer/list)和客户/路由器中的 new(customer.jsp#customer/new) 并加载相应的视图。到目前为止没有任何问题,我认为创建多页主干应用程序很容易。

当我在顶部菜单栏中添加子菜单时遇到麻烦,如下所示。

<ol class="nav">
    <li><a href='index.jsp' class="dashboard">Dashboard</a></li>
    <li class="dropdown">
         <a data-toggle="dropdown" href="customer.jsp">Customer</a>
         <ul class="dropdown-menu">
             <li><a href="customer.jsp#/customer/list"> Customer List</a></li>
             <li><a href="customer.jsp#/customer/new"> New Customer</a></li>
         </ul>
    </li>
    <li><a href="page2.jsp">Page2</a></li>
    <li><a href="page3.jsp">Page3</a></li>
<ol>

我的麻烦:

当我单击 index.jsp 中的客户列表时,它会完美地重定向到该 URL 并加载内容,当我单击客户列表页面中的 Customer New 时,URL 会更改,但仅当我单击浏览器中的刷新按钮时内容才会更改.

当我先单击“新客户”然后单击“客户列表”页面时,情况也是如此。换句话说,第一个 url 重定向有效,随后的 url 重定向仅在单击刷新按钮时有效。

由于我是这个骨干世界的新手,我无法自己弄清楚。经过一天的谷歌搜索后,我发布了这个。有人可以帮我解决这个问题。

移动多页的原因(物理)

1)避免加载特定页面不需要的视图js文件。(例如,仪表板加载客户页面,page1等所需的所有视图js)。

4

1 回答 1

0

您的 JS 文件会被浏览器缓存,因此仅使用多个页面来避免一次性加载它们并不是一个好主意。相反,您应该将 js 文件全部压缩并压缩成一个 js 文件,该文件包含在每个页面上。

如果您使用的是 maven,那么一个好的 java minifier 是https://github.com/samaxes/minify-maven-plugin

至于为什么你的内容会发生变化,我需要看看你的js

于 2013-06-19T03:05:18.433 回答