node.js - 尝试将路由器中的类方法作为中间件传递时“this”未定义_express
问题描述
如果我是正确的,我认为我的问题与 javascript 本身有关。我试图在我的中间件中使用这个关键字,但我得到了未定义。为什么?
class SomeClass {
constructor(foo){
this.foo = foo
}
testFoo(req, res, next){
console.log(this.foo) // undefined
}
}
let class_test = new SomeClass("some data")
app.get('/', class_test.testFoo, (req, res) => res.send('Hello World!'));
解决方案
Try this:
app.get(
'/',
(req, res, next) => class_test.testFoo(req, res, next),
(req, res) => res.send('Hello World!')
);
推荐阅读
- android - adjustPan 结合 EditText inputType="textPassword" 覆盖了 EditText 的一部分
- python-3.x - 加速 Keras LSTM
- java - HTML 表单转 PDF
- java - DFS 里面的一个条件真的让我很困惑
- python - Django 错误:无法使用 ImageField,因为未安装 Pillow
- javascript - 运行进程时codeigniter中的空白屏幕
- python - 如何通过python和selenium按照html单击文本为Continue的按钮
- angular - Angular 6 库 - 引导样式
- java - 创建一个包含方法的列表,然后在 Android 中执行
- oracle - 如何在 PL SQL Developer 中设置 OJDBC 版本