2016-12-15 134 views
0

我正在做一個教程,試圖學習Node和Angular。我對此完全陌生,我來自LAMP堆棧環境,所以對我來說這是一個全新的世界,我感到完全失去了。無法加載資源在節點JS

我已經安裝角JS和我的HTML文件中包含它,但我不斷收到此錯誤

http://localhost:3000/node_modules/angular/angular.min.js無法加載資源:服務器的狀態爲迴應404(未找到)

http://localhost:3000/app/app.js無法加載資源:服務器與404(未找到)狀態迴應

編輯:我曾嘗試各色一些nt接近,但他們都指向/server/目錄。

var appDir = path.dirname(require.main.filename); 
var appDir = path.dirname(process.mainModule.filename); 

這兩個都指向/server/目錄。

我的文件夾結構如下:

  • /應用
    • app.js
  • /node_modules
  • /服務器

    • 小號erver.js
  • 的index.html

server.js

var express = require('express'); 
var mongoose = require('mongoose'); 
var bodyParser = require('body-parser'); 

var app = express(); 

mongoose.connect('mongodb://localhost:27017/social'); 

app.use('/app', express.static(__dirname + '/app')); 
app.use('/node_modules', express.static(__dirname + '/node_modules')); 

app.get('/', function(req, res) { 
    res.sendFile("index.html", {root: '../'}); 
}); 

app.listen('3000', function() { 
    console.log('Listening for localhost 3000'); 
}); 

app.js

(function() { 
    angular.module('Social', []); 
}()); 

這是index.html

<!DOCTYPE html> 
<html lang="en" ng-app="Social"> 
<head> 
    <meta charset="UTF-8"> 
    <title>The title</title> 
</head> 
<body> 
    <p>Testing the test</p> 
</body> 

<script src="node_modules/angular/angular.min.js"></script> 
<script src="app/app.js"></script> 
</html> 

回答

0

__dirname是「當前正在執行的腳本所在目錄的名稱。」這是目錄server.js

所以,當你正在做的:

express.static(__dirname + '/app') 

我認爲它實際上是尋找/server/app這是不正確的。

+0

我應該用什麼來代替? – Halnex

+0

你是對的。這是我的一個錯誤,我把'server.js'嵌套在'/ server /'目錄下,當它應該在根目錄下時。把它移到那裏,它現在正在工作。 – Halnex