我是节点js和表达的新手。我使用npm安装快递邮件没有问题。从(mac)命令行我生成了一个带有“express”的express(4.13.1)应用程序。根据github说明我修改了app.js并更改了:
var express = require('express');
到
var express = require('express')(),
mailer = require('express-mailer');`
但随后“节点开始”崩溃:
/Users/gary/mailertest/node_modules/express/node_modules/finalhandler/index.js:58
var status = res.statusCode
^
TypeError: Cannot read property 'statusCode' of undefined`
我启动了一个节点会话,我知道var express = ...
成功了。失败的行是后续的:
var app = express();
我绝对不明白这里的所有部分,所以我不确定如何继续对此进行故障排除。
答案 0 :(得分:1)
从我的代码说明中读到:
var express = require('express')(), mailer=require('express-mailer'); //.. some code here var app = express();
你不应该实例化两次express,而应该实例化express一次:
var express = require('express'), //.. some code here var app = express(); var mailer = require('express-mailer');
因此,即使您成功运行了您的示例,请记住node-mailers documentation中的内容:
适用于Express 3.x.x
你正在使用快递版本4.x,所以不确定这个快递邮件库是否可能在快递版本的这方面存在一些问题。