我在带有快速应用程序的Node.js中使用Pug建立了一些网站。 网站上还有一个联系表,人们可以填写以提出问题。
我的问题是;我需要在哪里放置邮件功能的路由? 假设该函数中只有console.log(123)可以使它变得容易吗?!
请参阅以下结构(最必要的文件):
<option>
Server.js:
- site
- config
- assets
default.js
development.js
- env
default.js
development.js
- lib
app.js
express.js
logger.js
pug-routes.js
socket.io.js
config.js
- modules
- core
- client
- app
config.js
init.js
- config
core.client.route-filter.js
core.client.routes.js
core-admin.client.routes.js
- controllers
header.client.controller.js
home.client.controller.js
- css
- directives
- services
- views
- server
- controllers
core.server.controller.js
- routes
core.server.routes.js
- views
layout.server.view.html
- website
- client
- css
- img
- js
- server
contact.pug
- node_modules
- public
- scripts
package.json
server.js
App.js
/* eslint no-mixed-spaces-and-tabs: "error" */
/* eslint indent: ["error", 4] */
'use strict';
/**
* Module dependencies.
*/
var app = require('./config/lib/app');
var server = app.start();
module.exports = app;
联系表格:
/* eslint no-mixed-spaces-and-tabs: "error" */
/* eslint indent: ["error", 4] */
'use strict';
/**
* Module dependencies.
*/
var config = require('../config'),
mongoose = require('./mongoose'),
express = require('./express'),
chalk = require('chalk'),
seed = require('./seed'),
Mollie = require('mollie-api-node');
function seedDB() {
if (config.seedDB && config.seedDB.seed) {
console.log(chalk.bold.red('Warning: Database seeding is turned on'));
seed.start();
}
}
// Initialize Models
mongoose.loadModels(seedDB);
module.exports.init = function init(callback) {
mongoose.connect(function (db) {
// Initialize express
var app = express.init(db);
if (callback) callback(app, db, config);
});
};
module.exports.start = function start(callback) {
var _this = this;
_this.init(function (app, db, config) {
// Start the app by listening on <port> at <host>
app.listen(config.port, config.host, function () {
// Create server URL
const proto = process.env.NODE_ENV === 'secure' ? 'https' : 'http';
var server = `${proto}://${config.host}:${config.port}`;
// Logging initialization
console.log('--');
console.log(chalk.green(config.app.title));
console.log();
console.log(chalk.green('Environment: ' + process.env.NODE_ENV));
console.log(chalk.green('Server: ' + server));
console.log(chalk.green('Database: ' + config.db.uri));
console.log(chalk.green('App version: ' + config.meanjs.version));
if (config.meanjs['meanjs-version']) {
console.log(chalk.green('MEAN.JS version: '
+ config.meanjs['meanjs-version']));
}
console.log('--');
if (callback) callback(app, db, config);
});
});
};
我熟悉node / pug / express,但我不是专家。
答案 0 :(得分:0)
您可以添加App.js的init()
函数,
// Initialize express
var app = express.init(db);
app.post('/mail', (req, res) => {
// Do your stuff
})
只需确保在启动应用程序之前将其添加。