在nodejs公用文件夹中公开nodejs库

时间:2012-11-15 14:52:18

标签: javascript node.js express

有没有办法从ejs视图引用 node_modules 文件夹中包含的Nodejs库?

我正在使用 expressjs ,我的客户端库是从 / public 文件夹提供的,如下所示,所以我无法访问 node_modules 来自ejs视图的文件夹

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

1 个答案:

答案 0 :(得分:2)

<强>更新

使用requirejs,您似乎可以直接从node_modules提供模块。请参阅documentation on requirejs and node

示例:

var requirejs = require('requirejs');

requirejs.config({
    nodeRequire: require
});

requirejs(['some_module'], function(some_module) {
    // Here, some_module will be loaded from your node_modules
});

旧回答:

您可以在express中使用app.locals向您的视图公开属性或功能。

请参阅文档中的示例(上面链接):

app.locals.title = 'My App';
app.locals.strftime = require('strftime');