更改angularjs中的动态元标记

时间:2016-09-29 10:35:40

标签: javascript html angularjs

Iam尝试动态更改元标记,iam使用ngMeta tags但它不起作用我的意思是元标记中没有更新

这是我的HTML代码

 <meta property="fb:app_id" content="{{facebookAppId}}">
  <meta property="og:site_name" content="{{ngMeta.title}}">
  <meta property="og:title" content="{{ngMeta.title}}">
  <meta property="og:description" content="{{ngMeta.description}}">
  <meta property="og:url" content="{{ngMeta.url}}">
  <meta property="og:image" content="{{ngMeta.url}}">
  <meta property="og:type" content="website">

这是控制器代码

angular.module('core').controller('HomeController',['$scope','ngMeta'],function($scope,ngMeta){

 ngMeta.setTitle('Demo page');
    ngMeta.setTag('description', 'This is the description of the demo page');
    ngMeta.setTag('image', 'http://mobilemarketingwatch.com/wp-content/uploads/2016/05/Is-Google-Searching-for-the-Next-Big-Thing1.jpg');

});

这是我的路线

angular.module('core').config(['$stateProvider', '$urlRouterProvider', 'ngMetaProvider',function ($stateProvider, $urlRouterProvider, ngMetaProvider) {

 $stateProvider
      .state('home', {
        url: '/',
        templateUrl: 'modules/core/client/views/home.html'         
      })
      .state('aboutus', {
        url: '/aboutus',
        templateUrl: 'modules/core/client/views/about.html',
        data: {
          pageTitle: 'About '
        }
      });

}]).run(['ngMeta', function (ngMeta) {
  ngMeta.init();
}]);

在主页中也没有显示任何标题。请解决我的问题

这是我的浏览器控制台的图像

enter image description here

1 个答案:

答案 0 :(得分:1)

这与动态元标记或ngMeta无关。您尚未将HomeControllerhome州相关联。请参阅ui-router docs


    .state('home', {
            url: '/',
            templateUrl: 'modules/core/client/views/home.html',
            controller: 'HomeController'
          })