我找到了一些代码,他们在没有使用的情况下设置Express app.configure,我想知道,使用之间的区别是什么app.configure没有环境说明符而不使用它什么?
换句话说,这有什么区别:
var app = require(express);
app.configure(function(){
app.set('port', process.env.PORT || config.port);
app.use(express.logger('dev')); /* 'default', 'short', 'tiny', 'dev' */
app.use(express.bodyParser());
app.use(express.static(path.join(__dirname, 'site')));
}
Run Code Online (Sandbox Code Playgroud)
还有这个:
var app = require(express);
app.set('port', process.env.PORT || config.port);
app.use(express.logger('dev')); /* 'default', 'short', 'tiny', 'dev' */
app.use(express.bodyParser());
app.use(express.static(path.join(__dirname, 'site')));
Run Code Online (Sandbox Code Playgroud)
谢谢.
我正在学习Express.js 4和Node,我收到的错误是我无法弄清楚的.
我正在尝试使用node-sass包来编译我的sass代码,但是我无法启动并运行它.
这是我的主文件的精简版:
var express = require('express');
var sass = require('node-sass');
var app = express();
app.use(sass.middleware({
src: __dirname + "/assets",
dest: __dirname + "/static",
debug: true
}));
app.use(express.static(__dirname + '/static'));
app.get('/', function(req, res){
res.send("Hello World");
});
var server = app.listen(3000, function() {
console.log("Node is now listening.");
});
Run Code Online (Sandbox Code Playgroud)
当我运行时node server.js,我收到一个错误:
TypeError: app.use() requires middleware functions
Run Code Online (Sandbox Code Playgroud)
由此,我假设这sass.middleware不是一个中间件功能......
这个错误是什么意思?
它为什么被抛出?
我如何解决它?
我能找到的最接近的答案来自这个问题,但我从这里得到的答案是,这些答案只适用于Express 3.
如果有人能指出我如何将Express 4和Sass设置在一起(如果确实可以的话),我将非常感激.