$ injector.modulerr问题

问题描述 投票:0回答:1

所以我已经绞尽脑汁一段时间,看着每一条线,我似乎无法找到任何错误。这是我的代码:

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不是问题。请看看你是否可以解决我的问题。

附:对不起,我忘了添加我得到的错误,我只在标题中写了它,这里是:

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

提前致谢!

javascript angularjs frontend ngroute
1个回答
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

© www.soinside.com 2019 - 2024. All rights reserved.