Node.js javascript – 从外部脚本服务器端调用函数
每当在联系我们页面上提交表单时,我都希望我的Node.JS网站发送一封电子邮件。
HTML页面
<form class="contact_us_form" method="post"> <button type="submit" >Submit</button> </form>
Public.js
router.post('/contact_us', function(req, res, next) { console.log('FORM SUBMITTED FROM CONTACT_US PAGE'); sendMail(); });
utils.js
function sendMail() { //function body }
当我按下提交button的HTML然后sendMail被调用,但它不能被发现,所以HTML页面和public.js文件链接正确,但public.js和utils.js不是。
我将如何去关联函数“sendMail”到Public.js? 这个函数是为了在服务器上运行,而不是在客户端上运行。
NodeJS使用模块的概念。 你会从utils.js
导出utils.js
:
exports.sendMail = sendMail;
…并在public.js
导入:
var sendMail = require("./utils.js").sendMail; // ... sendMail(/*...*/);
要么:
var utils = require("./utils.js"); // ... utils.sendMail(/*...*/);
这是一个完整的例子:
utils.js
:
function sendMail() { console.log("I'm sending mail now..."); } exports.sendMail = sendMail;
public.js
:
var utils = require("./utils.js"); utils.sendMail();
运行它:
$ node public.js 我正在发送邮件...