2014-10-02 19 views
0

我尝试学习AngularJS。目前我专注于ui-Routing。我的代码非常简单,但它可以工作,我不知道为什么。我的问题基本的UI路由示例,但发生错误

说明:

http://de.tinypic.com?ref=kd22ow.jpg

的浏览器显示: 的 “Hello World UI路由!” (index.html中的h1)

如果我尝试输入index.html/home。 它说:找不到错误文件!

这里是我的代码:

的index.html

<html> 
    <head> 
     <title>My Angular App!</title> 
     <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.19/angular.min.js"></script> 
     <script src="app.js"></script> 
    </head> 
    <body ng-app="Test" ng-controller="MainCtrl"> 
    <h1>Hello World ui-Routing!</h1> 
     <div ui-view> 
     </div> 
    </body> 
</html> 

app.js:

angular.module('Test', ['ui-router']) 

.config([ 
'$stateProvider', 
'$urlRouterProvider', 
function($stateProvider, $urlRouterprovider) 
{ 
    $stateProvider 

    .state('home', { 
     url: '/home', 
     templateUrl: '/home.html', 
     controller: 'MainCtrl' 
    }); 

    .state('test', { 
     url: '/test', 
     templateUrl: '/test.html', 
     controller: 'TestCtrl' 
    }); 

    $urlRouterProvider.otherwise('home'); 
}]) 

.controller('MainCtrl', ['$scope', 
function($scope){ 
$scope.test = "Hello Jan!"; 
}); 

.controller('TestCtrl', ['$scope', 
function($scope){ 
$scope.test = "Hello Redirect!"; 
}); 

的test.html:

<h2>Hello Test! </h2> 

home.html的:

<h2>Hello Home! </h2> 

我的问题在哪里?

期待您的回答, 扬

+0

如何管理静态文件? – Unrealsolver 2014-10-02 12:15:07

+0

所有文件都在同一个文件夹中。 – Peter 2014-10-02 18:37:20

+0

也许,您必须安装服务器。例如:npm install static-server; static-server – Unrealsolver 2014-10-03 14:05:45

回答

1

你需要在你的HTML页面的UI路由器脚本太它是一个第三方,而不是包含在角。

+0

我已添加此表达式。但它也可以工作。同样的错误。 每个文件(index.html,home.html,test.html和app.js)都位于同一个文件夹中。这是一张图片Image and video hosting by TinyPic Peter 2014-10-02 18:30:37

+0

你是从网络服务器上运行文件还是直接从硬盘运行?如果以后,这是你的问题,你将需要一个网络服务器,因为铬从光盘加载文件时有限制。您可以按照本指南跳过这些限制http://www.chrome-allow-file-access-from-file.com/ – 2014-10-03 05:17:50

+0

感谢您的答案是解决方案。 – Peter 2014-10-31 14:23:08