为什么我的routeprovider不工作?

时间:2014-03-15 04:34:02

标签: angularjs angularjs-routing

我正在使用angular java脚本学习路由, 这是我的index.html

<html lang="en" ng-app="eventsApp">
.....
<div class="container">
    <div class="navbar">
        <div class="navbar-inner">
            <ul class="nav">
                <li><a href="#/newEvent">Create Event</a></li>
            </ul>
        </div>
    </div>

    <ng-view></ng-view>
</div>

这是我的app.js,

var eventsApp = angular.module('eventsApp', ['eventsApp', 'ngRoute'])
    eventsApp.config(function($routeProvider) {
        $routeProvider.when('/newEvent',
            {
                templateUrl:'templates/NewEvent.html',
                controller: 'EditEventController'
            }).....

当我点击按钮时,它什么都不做,也没有加载新事件。 并得到此错误

 "Error: [$injector:modulerr] Failed to instantiate module eventsApp due to:"

这是控制器

'use strict';

eventsApp.controller('EditEventController',
    function EditEventController($scope, eventData) {

        $scope.event = {};

        $scope.saveEvent = function (event, form) {
            if(form.$valid) {
                eventData.save(event);
            }
        };

        $scope.cancelEdit = function () {
            window.location = "/EventDetails.html";
        };

    }
);

1 个答案:

答案 0 :(得分:0)

我注意到的错误之一就是你将eventsApp作为自身的依赖传递。

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

应该是:

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

其次,您可能需要检查您是否已将ngRoute包含在页面中: 请参阅此处的安装说明:http://docs.angularjs.org/api/ngRoute

查看Plunkr上的一个工作示例: http://plnkr.co/edit/VZgTnBvi0Q8qtcpOUTx0