所以我使用了带有express的标记(降价模块),我没有设置标题var或渲染任何东西但是标题var正在变异-i guess-这里是我的index.js路由的代码:< / p>
/*
* GET home page.
*/
exports.index = function(req, res, marked){
marked('Why is this even __working__?.');
};
这是我的index.ejs的代码
<!DOCTYPE html>
<html>
<head>
<title><%= title %></title>
<link rel='stylesheet' href='/stylesheets/style.css' />
</head>
<body>
<h1><%= title %></h1>
<p>Welcome to <%= title %></p>
</body>
</html>
以下是我在浏览器中获得的内容,虽然我重启了应用程序很多次!!:
答案 0 :(得分:3)
您误解了连接/表达中间件功能签名。你有:
exports.index = function(req, res, marked){
但那不对。它是req, res, next
,并且没有涉及marked
。所以你没有渲染markdown,你将一个字符串传递给next()
,连接/表示将其视为错误。一旦删除错误命名的函数参数混淆,您的代码就会执行此操作:
exports.index = function(req, res, next){
next('Why is this even __working__?.');
}
因此,连接看到next
传递了一个错误字符串并表达了渲染的默认错误页面,并将其作为错误消息。