node.js require方法找不到javascript文件:找不到模块

时间:2013-03-09 05:18:12

标签: node.js

我是node.js的新手,我正在学习一些不同的教程。我的目标是使用带有ejs或下划线的节点。我使用下划线的第一次尝试并不是很顺利。

我正在使用bower来管理项目的脚本依赖项,并且我能够在路径public/javascripts/vendor下拉下一个下划线的amd版本。我相信如果我使用npm安装下划线,将找到该模块并且错误将消失。

我想用这行

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

基本上使用该目录下的所有静态文件?那么,为什么不能找到下划线..

这就是我顺便使用它的方式。

   var _ = require('underscore-amd');
app.register('.html', {
    compile: function(str, options){
        var compiled = require('underscore-amd').template(str);
        return function(locals) {
            return compiled(locals);
        };
    }
});

1 个答案:

答案 0 :(得分:0)

你提到npm,所以这是在节点中使用下划线的正确方法:

{
  "name": "example",
  "version": "0.0.1",
  "dependencies": {
    "underscore": "*",
  }
}

Bower用于客户端,您无法(轻松)在节点中使用bower lib。

这是为了向客户端提供静态文件:

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

不供服务器端节点使用。