gpt4 book ai didi

node.js - 在 Node.js 上的 Express 中扩展 View 类

转载 作者:太空宇宙 更新时间:2023-11-03 23:10:38 24 4
gpt4 key购买 nike

我想重写 Express 框架中用于 Node.js 的 View 类。我想增强查找方法,但我看不到在不更改 Express 和 App 模块的情况下实现此目的的方法。我倾向于从 Express 框架派生,但我找不到一个巧妙的方法来做到这一点。

有什么想法吗?

谢谢

最佳答案

在我看来你应该能够:

var View = require('express/lib/view');

// Keep reference to original lookup method
var _lookup = View.prototype.lookup;

// Override lookup method
View.prototype.lookup = function (path) {
// Your implementation here
};

更新:

运行此演示:

var View = require('express/lib/view');
var _lookup = View.prototype.lookup;
var express = require('express');

View.prototype.lookup = function (path) {
console.log('LOOKUP!!! ' + path);

return _lookup.call(this, path);
};

var app = express();

app.get('/', function (req, res) {
res.render('foo.jade');
});

app.listen(3000);

运行

node app & sleep 1 && curl localhost:3000

我希望这将证明这种重写方法的可行性。

关于node.js - 在 Node.js 上的 Express 中扩展 View 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13379558/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com