Web前端之路

Koa2 搭建个人网站框架

2019-07-04  本文已影响0人  镜轩夕照

构建项目

 yarn global add koa-generator
 koa2  -e projectname 
 cd project 
 yarn install

目录结构

koa2目录.png

重构目录

当然这样的目录显然不符合我们当下的开发方式,我们要把它变成我们熟悉的MVP模式

koa2-2.png

寻找优秀模版

为了节省开发成本,我们需要去下载一些优秀的模版我用到的的是amazeUI的模版文件。将静态文件都拷贝到public文件夹,html模版文件改为ejs后缀放入index模块的view中

WX20190704-202126@2x.png
同时需要修改模版文件里面静态资源的路径使之正确引入public的文件

构建路由,这里为了分离路由和处理逻辑我们将处理逻辑放在controller目录下作为controller层,然后在router里面引入


WX20190704-222216@2x.png

下面就是controller层文件的写法,koa2采用的是async/await的写法进行异步请求。并引入model。


WX20190704-222707@2x.png

现在mvc模式下的V和C已经搭建好了,就差M了,所以首先我们要安装一下Sequelize用于链接数据库,以下命令安装sequelize,点击可以去了解一下sequelize,这里不作过多介绍。

$ yarn add sequelize

在app文件夹下新建db.js用于配置数据库

var Sequelize = require('sequelize')

module.exports = new Sequelize('yzgblog','yzgblog','yzg_blog',{
    host:'你的数据库地址',
    dialect:'mysql',
    pool: {
        max: 5,
        min: 0,
        idle: 10000
    }
})
WX20190704-223420@2x.png

在model文件夹下新建模型层如users(用户),blogs(博客表)等等。引入db.js配置

let Sequelize = require('sequelize')
let sequelize = require('../../db')
let User = sequelize.define('users',{
    nickname:{
        type:Sequelize.STRING
    },
    avater:{
        type:Sequelize.STRING
    },
    email: {
        type: Sequelize.STRING
    }
})
module.exports = User;

至此项目的大致框架,mvc分层就都搭建起来了


WX20190704-231054@2x.png
WX20190704-231109@2x.png
上一篇 下一篇

猜你喜欢

热点阅读