【问题标题】:Adding $locationProvider to config causing error将 $locationProvider 添加到配置导致错误
【发布时间】:2015-03-10 20:05:35
【问题描述】:

我只是在学习角度,当我将 $locationProvider 添加到我的 .config 时,我收到以下错误。删除对 $locationProvider 的任何引用都会删除错误。这是一些角度版本错误,我尝试过不同的(更高的)版本吗?我不确定如何添加 $locationProvider 而不会出现错误。任何帮助将不胜感激。

我已经在 index.html 中设置了

Error: Error: [$injector:modulerr]  http://errors.angularjs.org/1.2.9/$injector/modulerr?p0=styleApp&p1=%5B%24injector%3Anomod%5D%20http%3A%2F%2Ferrors.angularjs.org%2F1.2.9%2F%24injector%2Fnomod%3Fp0%3DstyleApp%0AF%2F%3C%40https%3A%2F%2Fajax.googleapis.com%2Fajax%2Flibs%2Fangularjs%2F1.2.9%2Fangular.min.js%3A6%3A449%0AVc%2Fb.

我的配置如下:

styleApp.config(function($routeProvider, $locationProvider) {
    $routeProvider
        // route for the home page
        .when('#/', {
            templateUrl : '/page/page1.html',
            controller  : 'mainCtrl'
        })
        // route for 2nd page
        .when('#page2', {
            templateUrl : '/subdir/page2.html',

        })

        // route for the 3rdpage
        .when('#page3', {
            templateUrl : '/subdir/page3.html',

        })
        .when('#page4', {
            templateUrl : '/subdir/page4.html',

        })

        .when('#page5', {
            templateUrl : '/subdirn/page5.html',

        });

        // use the HTML5 History API
        $locationProvider.html5Mode(true);
});

【问题讨论】:

    标签: angularjs angularjs-routing


    【解决方案1】:

    您应该像这样添加“ngRoute”作为模块的依赖项:

    var styleApp = anular.module('moduleName', ['ngRoute']);
    

    其次,html5Mode 使您的 URL 看起来像普通 URL,因此您应该从所有路由中删除 #;因此,第 4 页的路线将如下所示:

    .when('/page4', {
            templateUrl : '/subdir/page4.html',
        })
    

    【讨论】:

    • 谢谢。我把网址改了。我已经添加了 ngRoute,我应该在我最初的问题中提到这一点。虽然仍然收到错误消息
    • 在 index.html 中使用 ngRoute 包的位置添加类似的内容 或添加到您的 bower.json "angular-路线": "版本",
    猜你喜欢
    • 2016-08-11
    • 2014-06-08
    • 1970-01-01
    • 2018-11-02
    • 2020-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多