2015-06-09 56 views
0

我使用connect服務器,serve-static爲我的angular應用程序。根據stylus文檔,他們要求使用middlewarehttps://learnboost.github.io/stylus/docs/middleware.html)來縮小.styl文件。我試過但沒有工作。如何配置連接服務器中的中間件

在連接服務器doc 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> 

更新

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

var app = connect(); 

app.use(stylus.middleware({ 
    src  : __dirname + '/app/css', 
    dest : __dirname + '/app/css', 
    force : true, 
    compile : function(str, path) { 
     return stylus(str, path) 
     .set('tcp', path) 
     .set('warn', true) 
     .set('compress', true); 
    } 
})); 

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

回答

1

手寫筆中間件不是默認了發貨。 https://github.com/senchalabs/connect/blob/0680f226f6bf7cc0c9e21a5a54a83c2deda5c4b4/History.md#057--2011-02-01

您仍然可以使用它像

var stylus = require('stylus'); 

... 

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

謝謝,我出錯誤了。但改變我的'styl'文件沒有發生與HTML。如何正確同步'.styl'文件,每次更改如何更新? – 3gwebtrain

+1

'force'選項會每次重新編譯 – B3rn475

+1

當然讓我試試。 – 3gwebtrain

相關問題