我有两个布局文件。布局-1布局-2
路径/one是加载Layout-1的起点,但是现在如果我点击一个链接/two,它会给我一个文件,但是对于Layout-1,我想,如果我点击/two,Layout-2应该会被加载。
如果我刷新页面,我会得到正确的结果,因为这一次我直接访问了服务器。因此,有没有办法从angular指定从服务器加载哪个布局文件。
谢谢。
发布于 2013-06-25 18:12:33
最后,我使用UI-Router解决了这个问题
感谢您的帮助:)
发布于 2013-11-23 16:01:03
加载新的布局模板意味着加载嵌入了新javascript和css文件的新html。这等同于将页面重定向到新位置。您可以使用$window.location.href="new/layout/template"。有关更多信息,请阅读angularjs developer guide。
发布于 2013-06-24 18:59:11
如果它代表客户端路由,那么您应该使用$routeProvider为此编写一个路由
var app = angular.module('app', []);
app.config(function($routeProvider){
$routeProvider
.when('/one', {templateUrl: 'tmpl1.html'})
.when('/two', {templateUrl: 'tmpl2.html'})
.otherwise({redirectTo: '/one'});
});它将允许您为另一个url/action定义单独的模板和控制器
Here我做了一个工作的例子来说明它是如何工作的。
如果它是关于服务器端路由的,那么阅读manual并像这样使用它:
match 'two' => 'controller#action'https://stackoverflow.com/questions/17273671
复制相似问题