Express未将javascript加载到客户端

Express未将javascript加载到客户端,javascript,node.js,express,requirejs,Javascript,Node.js,Express,Requirejs,我想对客户端代码使用requireJS。我的文件结构是: ProjectRoot |-server.js |-public/ |-index.html |-js/ |-app.js |-lib/ |-require.min.js |-underscore.js |-backbone.js |-raphael.js |-app/ |-..

我想对客户端代码使用requireJS。我的文件结构是:

ProjectRoot
 |-server.js
 |-public/
    |-index.html
    |-js/
       |-app.js
       |-lib/
          |-require.min.js
          |-underscore.js
          |-backbone.js
          |-raphael.js
       |-app/
          |-..
server.js:

index.html:

<!DOCTYPE html>
<html>
  <body>
  </body>
  <script src="js/lib/require.min.js" data-main="js/app.js" />
</html>
require.config({
    paths: {
        'jquery': 'lib/jquery',
        'raphael': 'lib/raphael'
    },
    shim: {
        'lib/underscore': {
            exports: '_'
        },
        'lib/backbone': {
            deps: ["lib/underscore", "jquery"],
            exports: 'Backbone'
        }
    }
});
问题:当我转到
localhost:8090
时,我只得到
index.html
而没有任何.js文件

问题:为什么Express不向客户端发送javascript

p.S.但是当我进入
http://localhost:8090/js/app.js
我得到了我的
app.js

我还使用
node server.js
命令启动我的应用程序


问题2:我的应用程序无法加载
数据主文件。它不是请求
localhost:8090/js/app.js
,而是请求
localhost:8090/js/app.app
。为什么是app.app?

我认为问题出在静态模块中,您的nodejs代码应该是这样的:

var express = require('express');
var app = express();
app.use(express.static(__dirname + '/public'));
app.listen(8090);
问题在于:

Q1: 我认为问题可能来自空内容模型,因此请尝试使用

 <script></script>

而不是

<script />

Q2:
我认为这是require.js版本中的一个问题,请阅读以了解更多信息。

您查看过Browserify吗?它将为您节省一些时间和样板文件。@Elclandrs这是requirejs的替代方案吗?我不想因为这样愚蠢的错误而放弃)希望你能帮助我me@elclanrs问题是express没有向客户端发送
require.min.js
。我想这就是为什么它不起作用的原因。加载页面时,你是否尝试过在chrome dev tools中查看网络选项卡或在FF中查看Firebug?我猜可能是重复的,我在这里复制了您的环境,并使用自动关闭标签,未加载任何内容,但如果我将其更改为
,则它可以工作。@HazenHagrass请查看我的quesiton@HazenHagrass它仍在查找
main.app
。请查看@V_B添加此应用程序的原因。使用('js/app.app',express.static('u_dirname+'/public/js/app.js');这是不正确的,我想你应该删除我尝试过的这条线。反正那也不行。只是不小心推了一下,我在回答第二季度的问题时附加了一个链接,我相信它会解决你的问题。
<script />