AngularJS ngRoute直接部件访问

时间:2015-08-12 21:31:33

标签: javascript angularjs routes ngroute angularjs-ng-route

我的应用程序适用于ngRoute,但当我尝试直接访问我的部件(从地址栏)时,它只返回部分(没有主页)。如何从直接访问中隐藏这些部分?

说明: 我有一个有2个街区的网站。首先是菜单,第二个是内容(我的路线之一)。菜单有链接:"#/ main"和"#/ account"。当我按下按钮时,它工作正常(左侧菜单和内容)。但是如果我将localhost:8080 /#/ account更改为localhost:8080 / account,它只会呈现内容,而不会显示菜单。我想隐藏对localhost:8080 /帐户的访问权限,或者让它用菜单呈现内容。

1 个答案:

答案 0 :(得分:1)

您的问题很可能不是您的AngularJS路由,而是来自服务器的路由。当您请求localhost:8080/account这样的页面时,您的服务器会说“好吧,我们只能提供/account文件”。但这不太对,因为你实际上想要加载整个应用程序。这是一个常见的问题,也无法解决。

我不知道你的后端是什么样的,但这里是express / node的一个通用例子:

var express = require('express'),
  routes = require('./routes');

app.get('/', routes.index);
app.get('*', routes.index);

“对后端的每个请求都应该首先呈现完整的布局,以便加载我们的Angular应用程序。只有这样,客户端呈现才会接管。”

src:http://fdietz.github.io/recipes-with-angular-js/backend-integration-with-node-express/implementing-client-side-routing.html