如何在多页骨干应用程序中传输两个页面之间的链接?

时间:2013-06-19 01:13:50

标签: backbone.js backbone-routing

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

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

我创建了一个如下所示的顶级菜单栏。

<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)和客户/新(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点击Customer List时,它会完美地重定向到该url并加载内容,当我从Customer List页面单击Customer New时,url会被更改,但只有当我单击refresh按钮时才会更改内容在我的浏览器中。

当我首先单击Customer New然后单击Customer List页面时,情况也是如此。换句话说,第一个网址重定向有效,以下网址重定向仅适用于点击刷新按钮。

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

在多页(物理)上移动的理由

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

1 个答案:

答案 0 :(得分:0)

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

如果你使用maven,一个好的java缩小器是https://github.com/samaxes/minify-maven-plugin

至于为什么你的内容正在改变,我需要看你的js

相关问题