尝试根据我当前的控制器或当前路由(URL 段 1)设置一个类。
就像是
<body class="{{controllerName}}">
这样,如果我需要针对 CSS 特定性定位单独的页面,它就很容易了。
我的解决方案是:在路由范围内订阅路由更改并将控制器的名称放在那里:
app.run(function($rootScope) {
$rootScope.$on('$routeChangeSuccess', function(ev,data) {
if (data.$route && data.$route.controller)
$rootScope.controller = data.$route.controller;
})
});
您可以使用$route服务,它具有current
可以为您提供当前控制器的属性。
甚至更简单。参数上直接有一个controller
属性data
。
$rootScope.$on("$routeChangeSuccess", function(e, data) {
$rootScope.controller = data.controller;
});
据我所知,该data
论点与$route.current
. 该controller
属性位于该对象的原型中。
对于 Angular 1.3 版本,您可以使用以下代码:
$rootScope.$on('$routeChangeSuccess', function (ev, data) {
if (data.$$route && data.$$route.controller)
$rootScope.controller = data.$$route.controller;
});