2016-04-03 87 views
0

這裏是我的項目中的文件/文件夾都在同一個文件夾中。Angular html文件找不到JS控制器[Node.js/Angular]

該項目的Github回購:https://github.com/JohnsCurry/learnAngular 只是爲了證明他們都在同一個目錄。對不起,我沒有package.json文件。唯一要安裝的是明示的。我做了npm install --save express。所以我不知道爲什麼package.json文件沒有顯示出來。

我試過這個沒有服務器運行的相同的確切結構(只是靜態HTML和JS文件客戶端只)和13.html文件找到controller13.js文件就好了。當我運行Node.js時,它不起作用。

我的錯誤:

GET http://localhost:3000/controller13.js localhost/:8 angular.js:38 Uncaught Error: [$injector:modulerr] http://errors.angularjs.org/1.3.14/ $injector/modulerr?p0=mainApp&p1=Error%3…gleapis.com%2Fajax%2Flibs%2Fangularjs%2F1.3.14%2Fangular.min.js%3A17%3A381)

因此,它不能找到某種原因controller13.js文件,我假定這就是爲什麼我得到了$injector錯誤。

13.html

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>AngularJS | Hands On!</title> 
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script> 
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.4/angular-route.js"></script> 
    <script src="controller13.js"></script> 
</head> 
<body ng-app="mainApp" ng-controller=""> 
    <div ng-view></div> 
</body> 
</html> 

controller13.js

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

app.config(function($routeProvider) { 
    $routeProvider 
    .when('/', { 
    templateUrl: '/page13.html' 
    }) 
    .when('/helloUser', { 
    templateUrl: '/hello13.html' 
    }) 
    .otherwise({ 
    redirectTo: '/' 
    }); 
}); 

app.js

var express = require('express'); 
var app = express(); 

app.get('/', function (req, res) { 
    res.sendfile(__dirname + '/13.html'); 
}); 

app.listen(3000, function() { 
    console.log('Example app listening on port 3000!'); 
}); 
+2

您忘記了確認靜態文件夾。 app.use(express.static(__ dirname +'/ public')); – shanhaichik

+0

謝謝......我現在得到了一個不同的錯誤,但我認爲這完全是另一回事。現在我的問題是我的Angular代碼很糟糕。對於noobie問題抱歉。 –

回答

1

你混合角1.3.14和角路由1.4.4。修正版本並查看。