node 之koa項目學習

寫在前面:4天長假過去,距離上半年的下一個假期還有25天,距離畢業的日子也逐漸的近了,一種期待和一種緊迫。javascript

進入正題:java

是什麼?Koa是基於Node.js的下一代web框架,由Express團隊打造,特色:優雅、簡潔、靈活、體積小。幾乎全部功能都須要經過中間件實現。mysql

能夠作什麼?搭建輕巧的web應用,利用中間件實現功能web

1.如何使用koa搭建一個mvc的項目?sql

     (1)使用項目生成器插件數據庫

           npm install koa-generator -g  //插件不屬於官方開發,可是功能上也很是贊

        執行完畢後就會出現文件目錄結構,而後進行自行開發便可npm

             啓動koa項目服務器

         npm start

  (2)不依賴生成器生成的項目目錄結構,自行進行項目目錄的構mvc

 2.項目文件的具體分析app

    (1)app.js 是整個項目啓動的關鍵,在此文件中建立koa服務器

   引入須要的路由並關聯app

 這樣項目啓動後便可以進行訪問路徑,其餘配置省略,

(2)路由的配置,對於一些頁面,只顯示,只須要render便可,部分頁面含有邏輯功能,須要調用咱們本身定義的控制器方法

 

 (3)controller的邏輯代碼的編寫

 

(4)model中的實現方式

     model是對數據庫的直接操做模式,首先要進行數據庫的鏈接,安裝mysql插件,數據庫的鏈接方式直接查看插件的內容就可

續集:數據庫鏈接的封裝方法

var mysql = require('mysql'); 
var pool  = mysql.createPool({
    connectionLimit : 10,
    host            : '127.0.0.1',
    user            : 'root',
    password        : '123',
    database        : 'test'
  }); //基礎配置
   
  var db = {};
 
  db.q = function (sql,params) {//封裝成能夠異步獲取方式
    return new Promise((resolve,reject)=>{
      // 取出連接
      pool.getConnection(function(err, connection) {
        if (err) {
          reject(err);
          return;
        }
        connection.query(sql,params, function (error, results, fields) {
              console.log(`${sql}=>${params}`);
               // 釋放鏈接
              connection.release();
              if(error) {
                reject(err);
                return;
              }
              resolve(results);  
        });
      });
    });
  }
  
module.exports=db;

  

3:項目運行時訪問順序 此處只包含路由模塊、控制器、數據模塊

從頁面訪問開始到數據返回的活動流程

 

 一個簡單的koa項目就搭建好了,掌握好訪問的一個模式,理解項目具體的訪問方式就會很容易上手,對於項目的細節,還須要本身進行不斷的嘗試和探索

相關文章
相關標籤/搜索