Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
AngularJS路由提供程序在MVC应用程序中不工作_Angularjs_Asp.net Mvc_Ngroute_Angularjs Ng Route - Fatal编程技术网

AngularJS路由提供程序在MVC应用程序中不工作

AngularJS路由提供程序在MVC应用程序中不工作,angularjs,asp.net-mvc,ngroute,angularjs-ng-route,Angularjs,Asp.net Mvc,Ngroute,Angularjs Ng Route,我正在尝试使用routeProvider将其中一个MVC控制器的MVC路由转换为角度路由。无论#、#的组合是什么!或者/我使用我没有得到工作路线 我有一个常见的html文件,我试图在其中加载ngview指令中的视图。下面是我的MainView.html。它位于MVC项目的“视图/地址”文件夹中。如routeprovider中所示,当“/”尝试加载地址/Index.html时。为了避免与MVC路由冲突,我创建了一个单独的文件夹并创建了Index.html的副本。但是,当我单击加载MainView的

我正在尝试使用routeProvider将其中一个MVC控制器的MVC路由转换为角度路由。无论#、#的组合是什么!或者/我使用我没有得到工作路线

我有一个常见的html文件,我试图在其中加载ngview指令中的视图。下面是我的MainView.html。它位于MVC项目的“视图/地址”文件夹中。如routeprovider中所示,当“/”尝试加载地址/Index.html时。为了避免与MVC路由冲突,我创建了一个单独的文件夹并创建了Index.html的副本。但是,当我单击加载MainView的链接时,Index.html没有被加载。 我已尝试将base href更改为root(“/”),并将其更改为主html文件,在该文件中我将尝试加载所有其他视图在url中,它仍然没有加载Index.html。 但是,当我在routeprovider中添加一个重定向到“/”的Others时,它将正确加载所需页面

@{
    ViewBag.Title = "View";
    Layout = "~/Views/Shared/_Layout.cshtml";
}

<div ng-app="app">
     <div ng-view>
    </div>
</div>

@section Scripts{

    <script>
       var app=angular.module('app',['ngRoute']);

       app.config(function ($routeProvider,$locationProvider) {
           $locationProvider.html5Mode(true);
           $routeProvider
           .when("/", {
               templateUrl: "Experimental/Addresses/Index.html",
               controller: "AddressList"
           }).when("/Addresses/Index", {
               templateUrl: "Experimental/Addresses/Index.html",
               controller: "AddressList"
           })

           .when("/Addresses/Edit/:id", {
               templateUrl: "Experimental/Addresses/Edit.html",
               controller: "EditAddress"
           })
          .otherwise({
              redirectTo:"/"
          });
        });
       app.controller('AddressList', ['$scope', '$http', function ($scope, $http) {

           $scope.model = [];
           $http.get('/Addresses/GetAddresses').then(function (response) {
               if (response != null || response != "undefined") {
                   $scope.model = response.data;
               }
           });
     }]);
</script>


}
@{
ViewBag.Title=“查看”;
Layout=“~/Views/Shared/_Layout.cshtml”;
}
@节脚本{
var app=angular.module('app',['ngRoute']);
app.config(函数($routeProvider,$locationProvider){
$locationProvider.html5Mode(true);
$routeProvider
.当(“/”时{
templateUrl:“实验性/Addresses/Index.html”,
控制器:“地址列表”
}).when(“/Addresses/Index”{
templateUrl:“实验性/Addresses/Index.html”,
控制器:“地址列表”
})
.when(“/Addresses/Edit/:id”{
templateUrl:“实验性/地址/编辑.html”,
控制器:“编辑地址”
})
.否则({
重定向至:“/”
});
});
app.controller('AddressList',['$scope','$http',函数($scope,$http){
$scope.model=[];
$http.get('/Addresses/GetAddresses')。然后(函数(响应){
if(响应!=null | |响应!=“未定义”){
$scope.model=response.data;
}
});
}]);
}

@georgeawg,是的,它不起作用。假设我将Addresses/MainView作为基本的href值。然后,当我在url中键入/之后按enter键时,它会给我一个错误,即不存在这样的页面。查看代码是否在没有HTML5模式的情况下工作,即
$locationProvider.html5Mode(false)最初我编写配置时没有将$locationProvider.html5mode设置为true。然后我不断地改变,希望某种组合能起作用,而这一个起作用了。