我正在使用AngularJS创建一些CRUD页面,并且在“用户”页面列表上,一旦用户单击“ Edit”按钮,我将尝试重定向到编辑页面。但是由于某些原因,$routeProvider无法正常工作。

这是我的index.html显示用户列表

<tr ng-repeat="user in usersData">
    <td>{{ user.firstname }}</td>
    <td>{{ user.lastname }}</td>
    <td>{{ user.jobtitle }}</td>
    <td>{{ user.userprofile.sex }}</td>
    <td>{{ user.userprofile.maritalstatus }}</td>
    <td><a ng-click="editUser(user.id)" class="btn btn-small btn-primary">edit</a></td>
    <td><a ng-click="deleteUser(user.id)" class="btn btn-small btn-danger">delete</a></td>
</tr>


我的app.js

var app = angular.module('benefitApp', ['ngRoute']);
app.config(function($routeProvider){
    $routeProvider
        .when("/editUser/:userId", {
                templateUrl : "templates/editUser.html"
            });
});

app.controller('userController', ['$scope','$http','$location',function($scope, $http, $location) {
  $http.get("https://localhost:8443/benefits/v1/users/").then(function (response){
      $scope.usersData = response.data;
  });
  $scope.editUser = function(userId) {
      $location.path('/editUser/' + userId);
  }
}]);


我的目录结构如下

src/main/resources/static/js/app.js
src/main/resources/static/css/bootstrap.css
src/main/resources/templates/index.html
src/main/resources/templates/editUser.html


我想念什么?单击“编辑”按钮时,浏览器中的URL更改为https://localhost:8443/home#!/editUser/1,但从未路由到editUser.html

最佳答案

尝试添加此和ng-view指令$location.path('editUser/' + userId);

09-11 09:15