1
GET /contact 200 33ms - 2.26kb
GET /stylesheets/bootstrap.css 304 2ms
GET /stylesheets/header.css 304 1ms
GET /stylesheets/style.css 304 2ms  
GET /stylesheets/contact.css 304 1ms
GET /javascripts/script.js 404 1ms

当我尝试加载我的 javascript 文件时,它一直说 404。我不知道为什么这不起作用!

以下是包含脚本的行:

extends layout
block css
  link(rel='stylesheet', href='/stylesheets/contact.css')
  script(type="text/javascript", src='/javascripts/script.js')

CSS加载正常。这是脚本文件的开头:

$(window).load(function() {
  function() {
    console.log("inside basil script");

所以它肯定是行不通的。

为什么会发生这种情况?我知道这很简单,但我无法弄清楚。我刚开始使用 node.js

PS 这里是我的 app.js 文件(很好的一部分)

// all environments
app.set('port', process.env.PORT || 3000);
app.set('views', __dirname + '/views');
app.set('view engine', 'jade');
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(path.join(__dirname, 'public')));
4

3 回答 3

2

您是否在您的应用程序中使用http://www.senchalabs.org/connect/static.html中间件来为带有客户端 javascripts 的目录提供服务?(我 90% 确定您使用的是 expressJS 框架)。

于 2013-10-13T22:15:12.960 回答
2

查看您显示的 http 代码,我相信您只添加了一个目录来提供静态文件,而没有添加javascripts一个。

所以你有类似的东西

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

现在你需要添加

 app.use(express.static(__dirname + '/javascripts'));
于 2013-10-13T22:17:34.180 回答
0

代替

app.use(express.static(path.join(__dirname, 'public')));

利用

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

这对我有用

于 2021-10-17T19:54:42.677 回答