有没有办法从 ejs 视图引用 node_modules 文件夹中包含的 Nodejs库?
我正在使用expressjs,并且我的客户端库是从/public文件夹提供的,如下所示,因此我无法从 ejs 视图访问node_modules文件夹
app.use(express.static(__dirname + '/public'));
有没有办法从 ejs 视图引用 node_modules 文件夹中包含的 Nodejs库?
我正在使用expressjs,并且我的客户端库是从/public文件夹提供的,如下所示,因此我无法从 ejs 视图访问node_modules文件夹
app.use(express.static(__dirname + '/public'));
更新:
使用requirejs,您似乎可以直接从 node_modules 提供模块。请参阅有关 requirejs 和 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');