我正在AngularJs中动态更改我的标题,使用以下代码:
app.run(['$rootScope', function($rootScope) {
$rootScope.$on('$routeChangeSuccess', function (event, current, previous) {
$rootScope.title = current.$$route.title;
});
}]);
app.config(['$routeProvider', function($routeProvider) {
$routeProvider
.when('/', {
title: 'My Tagline',
controller : 'IndexController',
templateUrl : 'static/app_partials/index.html'
})
.when('/categories/:categoryPk/', {
title: $scope.category.name,
controller : 'CategoryController',
templateUrl : 'static/app_partials/category.html'
})
.otherwise({ redirectTo : '/' });
}]);
HTML
<title ng-bind="'My Brand - ' + title">My Brand</title>
因此,对于IndexController
,标题只是一个简单的字符串,因此这种方法很有效。但是,对于我的CategoryController
,我希望从变量生成标题,特别是$scope.category.name
,我在控制器代码中初始化。我怎样才能做到这一点?有什么帮助吗?
答案 0 :(得分:3)
使用ng-bind-template
如下:
<title ng-bind-template="My Brand - {{$root.title}}">My Brand</title>
答案 1 :(得分:0)
查看ng-meta在AngularJS单页面应用程序中设置动态元标记