来自节点的Onclick函数帕格

问题描述

我通过了要在我的哈巴狗文件中渲染的函数。我想要的是单击按钮时,该功能应该启动,但是当我进入站点时该功能启动。下面是我如何通过函数并在PUG文件中使用它的方法

路由器

const start = require('../bot')

exports.home = (req,res) => {
    res.render('home',{
        functionOne: start.mainFunction()
    });
 }

PUG文件

html
    head
        link(rel="stylesheet" href="https://fonts.googleapis.com/css?family=Montserrat:300,400,500,700")
        link(rel="stylesheet" href="/css/main.css")
    body
        button(type="button" id="mybutton" onclick="functionOne")

解决方法

res.render语句仅用于将数据发送到模板,您不能通过那里发送函数。 Express documentation对此进行了解释。

当您请求页面时该函数正在运行,因为实际上是您在其中包含该函数时要告诉它执行的操作。

您将需要编写一些客户端JavaScript来进行AJAX调用或形成POST,然后在服务器上创建新的ExpressJS路由以捕获该路由并运行该函数。