我有 2 个布局文件。布局 1 布局 2
路线/one
是加载. Layout-1
_ _ _/two
Layout-1
/two
Layout-2
如果我刷新页面,我会得到正确的东西,因为当我直接访问服务器时。那么有什么方法可以从角度指定从服务器加载哪个布局文件。
谢谢。
我有 2 个布局文件。布局 1 布局 2
路线/one
是加载. Layout-1
_ _ _/two
Layout-1
/two
Layout-2
如果我刷新页面,我会得到正确的东西,因为当我直接访问服务器时。那么有什么方法可以从角度指定从服务器加载哪个布局文件。
谢谢。
加载新的布局模板意味着加载嵌入了新的 javascript 和 css 文件的新 html。这相当于将页面重定向到新位置。您可以使用 $window.location.href="new/layout/template"
. 阅读angularjs 开发者指南以获取更多信息。
如果它代表客户端路由,那么您应该使用$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 定义单独的模板和控制器
在这里,我做了一个工作示例来说明它是如何工作的。
如果是关于服务器端路由,请阅读手册并像这样使用它:
match 'two' => 'controller#action'
最后,我使用UI-Router解决了问题
谢谢您的帮助 :)