天天看點

nodejs庫

nodejs有很多優秀的庫,用來解決開發過程中碰到的問題

以下是我所用到過的幾個:

consolidate

集合了主流的模闆引擎,包括jade、jazz等,可以很友善地渲染html頁面

async

異步執行函數的解決方案

碰到嵌套的異步執行函數,可以使用async庫,來控制執行順序,避免函數的層層嵌套

例如async的waterfall函數可以按順序來執行一些異步函數,并把上一次執行的傳回結果,做為參數傳入到下個需要執行的異步函數中

async.waterfall([
    function(callback){
        callback(null, 'one', 'two');
    },
    function(arg1, arg2, callback){
        callback(null, 'three');
    },
    function(arg1, callback){
        // arg1 now equals 'three'
        callback(null, 'done');
    }
], function (err, result) {
   // result now equals 'done'    
});
           

node-mysql

node開發中如果涉及到mysql資料庫,node-mysql這個庫很好,非常簡單易用,

不足的是查詢結果是異步傳回的,是以可以結合async這個庫,

還要注意的是mysql的8小時問題,當應用程式和資料庫建立連接配接時,如果超過了8個小時沒有通路資料庫,資料庫就會出現斷掉連接配接的現象,暫時沒有找到合适的方式來解決,是通過每個幾個小時查詢一次來保證連結不被斷掉的