0
NodeMailerを既存のアプリケーションにセットアップしようとしています。私はメインのapp.ts
にNodeMailer設定を設定しようとしています。そして、必要に応じてどこにでもメールを送信するために、それを幅広く使ってください。これは私が私のapp.ts
に持っているものです。Node + Expressは、NodeMailerを使用しています。
import * as mailer from 'nodemailer';
const app = express();
dotenv.load({ path: '.env' });
app.set('port', (process.env.PORT || 3000));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
let mongodbURI = process.env.MONGODB_URI;
mongoose.Promise = global.Promise;
const mongodb = mongoose.connect(mongodbURI, { useMongoClient: true });
var mailConfig = {
host: process.env.MAIL_HOST,
port: process.env.MAIL_PORT,
auth: {
user: process.env.MAIL_USERNAME,
pass: process.env.MAIL_PASSWORD
}
};
let transporter = mailer.createTransport(mailConfig);
mongodb
.then((db) => {
console.log('Connected to MongoDB on', db.host + ':' + db.port);
setRoutes(app);
if (!module.parent) {
app.listen(app.get('port'),() => {
console.log('API listening on port ' + app.get('port'));
});
}
})
.catch((err) => {
console.error(err);
});
export { app };
私はapp.use(transporter)
とapp.set('transporter',transporter)
のようなものを試してみました。しかし、それをする方法はあまりないようです。それをアプリ全体に宣言し、controller/user.ts
のような他の場所でオブジェクトを使用するにはどうすればよいですか?
輸出nodemailer使用して、コントローラでそれをインポートしたい他のモジュール。 – vibhor1997a
@ vibhor1997aはい私はそれを行う方法がわかりません。説明していただけますか? – JackSlayer94
私は古いrequireとmodule.exportsを使用するので、import exportの構文についてはあまりよく分かりません – vibhor1997a