angularjs无法使用data-ng-view查找html

时间:2016-04-27 10:19:25

标签: javascript html angularjs asp.net-mvc

我正在尝试使用angularjs + mvc + api开发一个应用程序。你可以在这里看到我的角度js模块和控制器:

//home-index.js
var myApp = angular.module('myApp', []);
myApp.config([function ($routeProvider) {
    $routeProvider.when("/", {
        Controller: "homeIndexController",
        templateUrl:"templates/t.html"

    });
    $routeProvider.otherwise("/");
}]);
myApp.controller('homeIndexController', homeIndexController);
function homeIndexController($scope,$http) {
       $scope.data2 = [];
    $scope.busy = true;
    $http.get("/api/default").
        then(function(result) {
            //success
            angular.copy(result.data, $scope.data2);
        }, function() {
            //error
        }).then(function() {
            $scope.busy = false;
        });
}

您可以创建路由。如果用户输入此网址http://localhost:20713/Home/Index/#/,则角度应该在我的模板文件夹中加载t.html

我认为t.html应该注入它,你可以在这里看到:

@{
    ViewBag.Title = "Home Page";
}
<div data-ng-view=""></div>

这是t.html文件的内容:

Hi this is a test

但是,当我打电话给这个网址http://localhost:20713/Home/Index/#/时,没有任何反应!!页面为空,而Hi this is a test中的信息也不存在。为什么?

浏览器中我的页面资源

enter image description here

3 个答案:

答案 0 :(得分:0)

myApp 模块上注入 ngRoute 模块

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

并正确指定数组内联注释

myApp.config('$routeProvider', [function ($routeProvider) {
    $routeProvider.when("/", {
        Controller: "homeIndexController",
        templateUrl:"templates/t.html"

    });
    $routeProvider.otherwise("/");
}]);

答案 1 :(得分:0)

我只是改变角度js的参考

<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.7/angular.min.js"></script>

并且每件事都很好。为什么?

答案 2 :(得分:0)

尝试

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

并且还要改变

Controller: "homeIndexController"

controller: "homeIndexController",