Node和Express无法找到我的js文件夹

时间:2015-08-21 17:04:02

标签: javascript node.js

我有一个Node.JS应用程序的文件夹结构

 /
 |-js
    |-ajax.js
 |-img
 |-css
 |-views
    |-index.html
 |-router
    |-main.js
 |-node_modules
 |-server.js

我的server.js文件看起来像

var express=require('express');
var app=express();
require('./router/main')(app);
app.set('views',__dirname + '/views');
app.set('view engine', 'ejs');
app.engine('html', require('ejs').renderFile);
var server=app.listen(3000,function() {
  console.log("Express is running on port 3000");
});

我是Node和Express的新手。当我尝试在我的index.html(内部视图)中包含一个js文件时,它说该文件无法找到。我不明白为什么

../js/ajax.js
无法从我的index.html找到

我认为我的css文件也会出现同样的问题。

1 个答案:

答案 0 :(得分:1)

您需要将js目录设置为静态。

app.use(express.static('js'));

http://expressjs.com/starter/static-files.html

但是我建议您使用目录结构:

-static
  -js
    -ajax.js
  -img
  -css
-views
-router

然后

app.use(express.static('static'));