$ injector.modulerr问题

时间:2018-09-09 11:31:29

标签: javascript angularjs frontend ngroute

因此,我已经花了一段时间的精力,看着每一行,我似乎找不到任何错误。这是我的代码:

HTML:

<body ng-app='myApp'>
<div class="wrapper">
  <nav>
    <ul ng-controller="pathController">
      <li ng-click="changePath('about')"><a href="#about">About</a></li>
      <li ng-click="changePath('contacts')"><a href="#contacts">Contacts</a></li>
      <li ng-click="changePath('login')"><a href="#login">Log In</a></li>
      <li ng-click="changePath('register')"><a href="#register">Join Now</a></li>
    </ul>
  </nav>
</div>
<script src="node_modules/jquery/dist/jquery.min.js" type="text/javascript"></script>
<script src="node_modules/angular/angular.min.js" type="text/javascript"></script>
<script src="node_modules/angular-route/angular-route.min.js" type="text/javascript"></script>
<script src="app.js" type="text/javascript"></script>
<script src="scripts/controllers/pathController.js" type="text/javascript"></script>
</body>

app.js:

var app = angular.module("myApp", ['ngRoute', 'ngController']);

app.config(["$locationProvider", "$routeProvider"], 
  function($locationProvider, $routeProvider) {
  $locationProvider.hashPrefix("");
  $routeProvider.when('/', {
    templateUrl: "index.html"
  })
})

关于该“ ngController”依赖项-我随后在检查可能修复它的不同事物的过程中添加了它。

和pathController.js:

app.controller('pathController', function($scope) {
  $scope.changePath = function(pth) {
    window.location.pathname = pth;
  }
})

如您所见,$ routeProvider不是问题。请看一下是否可以解决我的问题。

P.S。 很抱歉,我忘记添加我得到的错误,我只在标题中写了,这里是:

  

未捕获的错误:[$ injector:modulerr] http://errors.angularjs.org/1.7.4/ ...

谢谢!

1 个答案:

答案 0 :(得分:2)

尝试

var app = angular.module("myApp", ["ngRoute"]);

app.config(["$locationProvider", "$routeProvider", 
 function($locationProvider, $routeProvider) {
 $locationProvider.hashPrefix("");
 $routeProvider.when('/', {
    templateUrl: "index.html"
 })
 }]
)

您犯了以下错误:

app.config([“ $ locationProvider”,“ $ routeProvider” ],<-此]括号不应在此处关闭。

Here is the working plunkr