ngMeta注射错误,我做错了什么?

时间:2016-11-08 07:00:34

标签: angularjs dependency-injection

我正在尝试在我的应用中使用ngMeta,但我收到注射错误。

错误:[$ injector:modulerr]由于以下原因导致无法实例化模块ngMeta: 错误:[$ injector:nomod]模块' ngMeta'不可用!您要么错误拼写了模块名称,要么忘记加载它。如果注册模块,请确保将依赖项指定为第二个参数。

这是我的应用代码:

var myApp = angular.module('myApp', ['ngRoute', 'ngMeta'])

.config(function ($routeProvider, $locationProvider, ngMetaProvider) {
$routeProvider
    //default route
    .when('/', {
        templateUrl: 'test-list.html',
        controller: 'testController',
        meta: {
            title: 'test title',
            description: 'test description'
        }
    })
    .when('/productlist/another', {
        templateUrl: 'another-list.html',
        controller: 'anotherController',
        meta: {
            title: 'test title 2',
            description: 'test description 2'
        }
    })
    .otherwise({

        redirectTo: '/'
    });

$locationProvider.hashPrefix('!');

}).run(function ($rootScope, $route, ngMeta) {
    //used for access to query string params
    $rootScope.$route = $route;
    ngMeta.init();
});

这是使用ngMeta值的html。

<!DOCTYPE>
<html ng-app="myApp">
<head>
    <meta charset="utf-8">
    <meta name="fragment" content="!">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta property="og:title" content="{{ngMeta.title}}" />
    <meta property="og:description" content="{{ngMeta.description}}" />
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="author" content="blah blah">
    <base href="/" />
    <title ng-bind="ngMeta.title"></title>

我已经安装了npm模块ng-meta,在这方面看起来一切都很好。

任何人都可以帮我弄清楚为什么我会收到依赖注入错误?我已经尝试了不同的方法来实现基于Git示例和ngMeta主页示例的工作,但它们都包含实例化模块的不同方式,这两种方式都不适用于我。

1 个答案:

答案 0 :(得分:0)

这听起来像你没有加载ngMeta。检查您提供的URL以加载ngMeta文件。