-1

enter image description here我有一个空的MVC项目,但是我确实有一个名称为MyViews的文件夹,并包含html(view1.html和view2.html),而脚本html位于主项目文件夹下(位置在global.asax文件下面)。它没有加载角度的意见

<html data-ng-app="App"> 
 

 
<head> 
 
    <title></title> 
 
</head> 
 

 
<body> 
 
    <div> 
 
    <div data-ng-view=""></div> 
 
    <input type="text" name="txtName" data-ng-model="typedName" /> 
 
    <br />Typed Name is: {{ typedName }} 
 
    <br />Names: 
 
    <ul> 
 
     <li data-ng-repeat="person in Customers | orderBy:'name' | filter:typedName ">{{ person.name | uppercase}} - {{ person.city }} 
 
     </li> 
 
    </ul> 
 
    </div> 
 
    <script src="Scripts/angular.min.js"></script> 
 
    <script> 
 
    angular.module('App', []).config(function($routeProvider) { 
 
     $routeProvider 
 
      .when('/View1', { 
 
      controller: 'Fir', 
 
      templateUrl: '/MyViews/View1.html' 
 
      }) 
 
      .when('/View2', { 
 
      controller: 'Fir', 
 
      templateUrl: '/MyViews/View2.html' 
 
      }) 
 
      .otherwise({ 
 
      redirectTo: '/View1' 
 
      }); 
 
     }) 
 
     .controller('Fir', function($scope) { 
 
     $scope.Customers = [{ 
 
      name: 'Kiam', 
 
      city: 'Los Angeles' 
 
     }, { 
 
      name: 'Se', 
 
      city: 'Los Vegas' 
 
     }] 
 
     }); 
 
    </script> 
 
</body> 
 

 
</html> 
 
​

为什么不加载的看法? :(

+0

有什么错误吗? – 2015-04-03 14:53:53

+0

完全没有错误 – Learner 2015-04-03 14:54:15

+0

您是否使用ng-app =“App”加载应用程序? – 2015-04-03 14:56:13

回答

2

您要使用的角度路由模块ngRoute,但你从未真正将它包含在你的页面上。

您需要进行两项更改才能使此代码正常工作;首先,您需要在页面上加载ngRoute模块,并且当然在您的脚本目录中有该模块。即

<script src="Scripts/angular.min.js"></script> 
<script src="Scripts/angular-route.js"></script> 

其次,你需要包括ngRoute在你的应用程序中的模块依赖,就像这样:

angular.module('App', ['ngRoute']).config(function($routeProvider) { 

正如我前面提到的给你,你就不能按照一个两岁的视频指南并期望它能够正确使用当前版本的angular。已经有许多重大变化,包括这种情况下,角路由模块被移动到它自己的文件。

+0

谢谢,但你怎么知道Ť他的模块名称为ngRoute?我可以保留任何名字?还是来自您认识它的文件被称为ngRoute?我在你给出的链接中看到了它......此外,我现在意识到视频上传器已经写了一些关于路由变化的评论,我没有观察到,因为我正在通过下载离线观看视频(没有看到写入的内容这个视频下的描述由他:()感谢您告诫我,我现在将确保阅读我观看的每个视频:) – Learner 2015-04-03 15:33:40

+0

此外,我做了一个小的更正,我必须在单引号下使用ngRoute .....否则它不起作用:S – Learner 2015-04-03 15:35:58

+1

是的,这只是你必须阅读文档才能知道的东西;较新的教程和视频使用了足够多的名称,即使您不知道它在文档中的位置,也可能会看到提及的名称。但角是一个非常大的框架,有很多文档... – Claies 2015-04-03 15:36:51

0

您可以检查是否您的MyViews文件夹是在为你的JavaScript相同的路径文件?

另外,尽量避免开始/这表明从您的应用程序的root路径路径。

templateUrl路径必须是相对于所谓的JavaScript文件。

app/ 
    main.js 
    MyViews/ 
     View2.html 
+0

谢谢,我删除了/和我也粘贴了我的文件夹结构上面。它不起作用:( – Learner 2015-04-03 15:03:20

+0

你试过删除主导斜杠吗? – 2015-04-03 15:10:29

+0

是的没有运气:(.. – Learner 2015-04-03 15:12:14