目标:我试图将$location.url()
的值添加为我的<body>
标记的属性,以添加页面特定的样式。当路线改变时,它应该自动改变。
预期的行为:
首次登陆页面时,路线会传递到<body>
路线更改时,新路线将传递到<body>
观察到的行为:
首次登陆页面时,路线已成功传递到<body>
当路由更改时,<body>
中的路由保持不变
JS
app.controller('MainController', ['$scope', 'appData', '$location', '$rootScope', function ($scope, appData, $location, $rootScope) {
$scope.location = $location.url();
// Unrelated code follows...
的HTML
<body data-page="{{ location }}" ng-controller="MainController">
现在,从这里开始,我希望能够使用
[data-page="/login"] {}
等对其进行样式设置。 最佳答案
我建议看一下$routeChangeSuccess
事件。您可以在这里每次更新您的位置。
$rootScope.$on('$routeChangeSuccess', function(event, current, previous) {
$rootScope.location = $location.url();
});