无法加载资源在节点JS
问题描述:
我正在做一个教程,试图学习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>
答
__dirname
是“当前正在执行的脚本所在目录的名称。”这是目录server.js
是
所以,当你正在做的:
express.static(__dirname + '/app')
我认为它实际上是寻找/server/app
这是不正确的。
我应该用什么来代替? – Halnex
你是对的。这是我的一个错误,我把'server.js'嵌套在'/ server /'目录下,当它应该在根目录下时。把它移到那里,它现在正在工作。 – Halnex