如何在节点js中添加事件监听器
How can I add event listener in node js
我正在尝试构建一个简单的计算器,其中的操作将在 Node.js
服务器中完成。如何在 HTML
页面按钮中添加事件侦听器,以便在单击按钮时在 Node.js
服务器中进行计算?
查看 Node 的 EventEmitter。使用此 class,您可以发出事件并监听它们。您还可以创建自己的 classes 来扩展 EventEmitter
并像这样使用它的功能:
const { EventEmitter } = require('events');
class MyClass extends EventEmitter {
constructor() {
super();
}
doSomething() {
this.emit('someEvent');
}
}
const test = new MyClass();
test.on('someEvent', () => console.log('event was fired'));
test.doSomething();
正如一些用户所指出的那样,标题不正确,您应该提供一些代码片段来展示您一直在做什么以及您的问题究竟出在哪里。
从问题的形式和细节来看,我建议你研究一下前端和后端之间的区别,解决方案会更清楚。但是关于您的具体问题,假设您使用的是 Node,可能与 Express 和一些模板引擎一起使用;
- 您需要将
onClick
侦听器附加到 ejs
/pug
/haml
文件中的按钮
- 通过
getElementById
或FormData
以某种方式从您的form
获取数据
- 在到达您的路线的端点上使用
POST
执行 fetch
-> 控制器使用您的表单或按钮中的数据
res.json(...)
或者,更可能的是 res.render(...)
包含相关数据结果的页面
我正在尝试构建一个简单的计算器,其中的操作将在 Node.js
服务器中完成。如何在 HTML
页面按钮中添加事件侦听器,以便在单击按钮时在 Node.js
服务器中进行计算?
查看 Node 的 EventEmitter。使用此 class,您可以发出事件并监听它们。您还可以创建自己的 classes 来扩展 EventEmitter
并像这样使用它的功能:
const { EventEmitter } = require('events');
class MyClass extends EventEmitter {
constructor() {
super();
}
doSomething() {
this.emit('someEvent');
}
}
const test = new MyClass();
test.on('someEvent', () => console.log('event was fired'));
test.doSomething();
正如一些用户所指出的那样,标题不正确,您应该提供一些代码片段来展示您一直在做什么以及您的问题究竟出在哪里。 从问题的形式和细节来看,我建议你研究一下前端和后端之间的区别,解决方案会更清楚。但是关于您的具体问题,假设您使用的是 Node,可能与 Express 和一些模板引擎一起使用;
- 您需要将
onClick
侦听器附加到ejs
/pug
/haml
文件中的按钮 - 通过
getElementById
或FormData
以某种方式从您的 - 在到达您的路线的端点上使用
POST
执行fetch
-> 控制器使用您的表单或按钮中的数据 res.json(...)
或者,更可能的是res.render(...)
包含相关数据结果的页面
form
获取数据