目标:我正在尝试添加 $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();
});
关于javascript - Angular $locationProvider 不改变 .url(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23254528/