2015-09-19 102 views
2

我在学习角度,我遇到了显示我的部分问题。 这可能是一些微不足道的事,我忘了,但我似乎无法找到它。角模板未加载/路线

的index.html

<!DOCTYPE html> 
    <html ng-app="myTool"> 
    <head> 
    <link rel="stylesheet" type="text/css" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" /> 
    <script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.5/angular.min.js"></script> 
    <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.5/angular-route.js"></script> 
     <script type="text/javascript" src="app.js"></script> 
    <script type="text/javascript" src="tool-controller.js"></script> 
    </head> 

    <body> 
    <div class="container"> 
     <nav class="navbar navbar-default"> 
     <div class="container-fluid"> 
      <div class="navbar-header"> 
      <a class="navbar-brand" href="#"><img alt="myTool" src="/templogo.png"></a> 
      </div> 
      <div id="navbar" class="navbar-collapse collapse"> 
      <ul class="nav navbar-nav"> 
      <li><a ng-href="#/dashboard">DashBoard</a></li> 
      <li><a ng-href="#/new">New</a></li> 
      </ul> 
      <ul class="nav navbar-nav navbar-right"> 
      <li><a ng-href="#">Logout </a> </li> 
      </ul> 
      </div> 
     </div> 
     </nav> 
    <div ng-view> 
    </div> 
    </div> 

    </body> 
    </html> 

app.js

angular.module('myTool',['ngRoute']) 
    .config(function($routeProvider){ 
     $routeProvider.when('/new', { 
     templateUrl: '/tool-new.html', 
     controller:'ToolController', 
     controllerAs: "tool" 
     }) 
     .when('/dashboard', { 
     templateUrl: '/empty.html' 
     }) 
     .when('/', { 
     templateUrl: '/index.html' 
     }) 
     .otherwise({ redirectTo: '/' }); 
    }); 

工具controller.js

angular.module('myTool', []) 
    .controller('ToolController',['$scope', function($scope) { 
     $scope.list = []; 
     $scope.tool = {}; 
     $scope.submit = function() { 
       $scope.list.push(this.tool); 
       $scope.succes = 'sent'; 
      }; 
     $scope.search = function() { 
     }; 
    }]); 

和我的部分是工具new.html和empty.html 。

我真的不明白我的思念:

-index.html与NG-视图占位布局我的部分

  • 基本路线+回落

  • 我的控制器链接到我的模板

  • html文件作为我的模板与随机的东西里面。

  • IM上的本地webserv运行一切

我试图加入控制器作为依赖的写在angulardoc,我也试着专门调用脚本代码的模板之间我ng-show标签。

感谢您的建议。

+0

文件index.html和empty.html是否在任何文件夹内?因为你的'templateUrl:'/ empty.html''前面有一个斜线。也检查你的控制台,看看你是否有任何错误,你可以尝试'

' –

+0

现在没有一切都在同一个文件夹中,我试过/'空'和'空',它不工作:(。 我没有在控制台中的错误 – jayD

回答

2

尝试(在视图名称的开头只是删除 '/')将您的看法是这样的:

angular.module('myTool',['ngRoute']) 
.config(function($routeProvider){ 
    $routeProvider.when('/new', { 
    templateUrl: 'tool-new.html', 
    controller:'ToolController', 
    controllerAs: "tool" 
    }) 
    .when('/dashboard', { 
    templateUrl: 'empty.html' 
    }) 
    .when('/', { 
    templateUrl: 'index.html' 
    }) 
    .otherwise({ redirectTo: '/' }); 
}); 

而且还从工具controller.js

angular.module('myTool') 
.controller('ToolController',['$scope', function($scope) { 
    $scope.list = []; 
    $scope.tool = {}; 
    $scope.submit = function() { 
      $scope.list.push(this.tool); 
      $scope.succes = 'sent'; 
     }; 
    $scope.search = function() { 
    }; 
}]); 
删除[]
+0

是的,我已经尝试过,它已经没有做任何事情 – jayD

+0

男人,看到我更新的答案。它的工作原理!请检查它并回答我 –

+0

它是否适用于您?) –

0

你错过了html中控制器的名字,即toolController也切换到你的文件的JavaScript命名约定,它将变得更容易编码。你在html中的实际代码应该有ng-controller =“toolController”,它应该放在你身上r div标签以加载控制器。

+0

它在那里,在我的new.html:'

> – jayD

+0

它不会在那里工作,为了加载部分你必须告诉html哪个控制器有你的内容ng-view你的body标签或你的div标签在index.html中必须包含ng-控制器加载tool-new.html –