我正在学习使用Nodejs和Mysql创建注册页面的教程:https://www.js-tutorials.com/javascript-tutorial/node-js-user-authentication-using-mysql-express-js/
但在某种程度上遇到了下面的问题,我找不到任何解决方案。希望你们能帮忙。提前谢谢!
错误日志
ReferenceError: C:\Users\User\Desktop\nodejstest\nodejsmysql\webapp\views\index.ejs:18
16|
17| <div style="padding-top:30px" class="panel-body" >
>> 18| <% if (message.length > 0) { %>
19| <div class="alert alert-danger col-sm-12"><%= message %></div>
20| <% } %>
21|
message is not defined
Index.js
var express = require('express');
var router = express.Router();
/* GET home page. */
exports.index = function(req,res){
var message = '';
res.render('index',{message: message});
}
router.get('/', function(req, res, next) {
res.render('index', { title: 'Express' });
});
module.exports = router;
Index.ejs
<div style="padding-top:30px" class="panel-body" >
<% if (message.length > 0) { %>
<div class="alert alert-danger col-sm-12"><%= message %></div>
<% } %>
答案 0 :(得分:0)
exports.index = function(req,res){
var message = '';
res.render('index',{message: message});
}
router.get('/', function(req, res, next) {
res.render('index', { title: 'Express' });
});
这不对。
你没有按照教程来写信
要使其正常工作,请删除exports.index
位,然后执行:
router.get('/', function(req, res, next) {
var message = '';
res.render('index', {message: message});
});
在您的示例中,从教程中,您已经错过了
步骤5:创建一个新文件routes / index.js
并且只是将{ title: 'Express' }
返回到您的视图 - 没有message