动态更新AngularJS单页面应用程序中的元标记

时间:2014-11-22 04:23:31

标签: angularjs

我试图找出如何在angularjs单页面应用程序中动态更新元标记。我已经找到了如何使用以下方法为标题标记执行:

 myApp.run(function($location, $rootScope) {
 $rootScope.$on('$routeChangeSuccess', function (event, current, previous) {
 $rootScope.title = current.$$route.title;
 });
 });

 <title ng-bind="title">myApp</title>

 $routeProvider.when('/', {
     templateUrl : '/pages/home.html',
     controller  : 'homeController',
     title: 'the home page'  
    })

但是我很难将这个扩展到meta标签。

1 个答案:

答案 0 :(得分:0)

我认为您可以像这样使用resolve

<强> app.js

var app = angular.module('plunker', ['ngRoute']);

app.config(function($routeProvider){
$routeProvider
   .when('/', {
    templateUrl : 'home.html',
    controller  : 'homeController',
    resolve : {
        pageTitle : function(){
          return {'title':'Home Page Title.'}
        }    
      }
    })
});

app.controller('homeController', function($scope, pageTitle){
  $scope.title = pageTitle.title
});

<强> home.html的

<title ng-model="title"></title>

这是工作plunker,但您需要