如何在连接服务器中配置`middleware`

时间:2015-06-09 09:37:08

标签: angularjs node.js connect stylus

我正在使用connect服务器serve-static用于我的angular应用。根据{{​​1}}文档,他们要求使用stylushttps://learnboost.github.io/stylus/docs/middleware.html)来归档middleware文件。我试过但没有工作。

在连接服务器中,文档.styl显示了一些我不理解的方式。

这是我的代码:

https://github.com/senchalabs/connect#readme

有人帮我配置中间件吗?

我现在得到的错误是:

var connect = require('connect'),
    serveStatic = require('serve-static');

var app = connect();

app.middleware({
   src: __dirname + '/css',
   dest: __dirname + '/css'
 });

function compile(str, path) {
   return stylus(str)
     .set('filename', 'tcp.styl')
     .set('compress', true)
     .use(nib())
     .import('nib');
 }

app.use(serveStatic("app"));
app.listen(5000, function () {console.log("HI");});

更新

D:\Projects\TCP>node server.js
D:\Projects\TCP\server.js:6
app.middleware({
    ^
TypeError: undefined is not a function
    at Object.<anonymous> (D:\Projects\TCP\server.js:6:5)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Function.Module.runMain (module.js:501:10)
    at startup (node.js:129:16)
    at node.js:814:3

D:\Projects\TCP>

1 个答案:

答案 0 :(得分:1)

默认情况下,Stylus中间件不再出厂。 https://github.com/senchalabs/connect/blob/0680f226f6bf7cc0c9e21a5a54a83c2deda5c4b4/History.md#057--2011-02-01

您仍然可以像

一样使用它
var stylus = require('stylus');

...

app.use(stylus.middleware(...));