Egg

2020-05-22  本文已影响0人  JunChow520

项目初始化

使用GIT创建项目,本地克隆项目并进入。

$ git clone http://xxxx.com/api
$ cd api

使用脚手架快速初始化,使用npm init egg快速选择适合对应业务模型的脚手架。

$ npm init egg -type=simple

若GIT项目中已存在README.md文件则会出现说明,可以先删掉。

$ npm i

启动项目

$ npm start / npm run dev / npm test
$ open http://127.0.0.1:7001

配置数据库

安装依赖

$ npm i -S egg-mysql

配置插件

$ vim /config/plugin.js
module.exports = {
  mysql:{enable:true, package:"egg-mysql"}
}

项目配置

$ vim /config/config.default.js
module.exports = appInfo=>{
  config.mysql = {
    client:{
        host:"127.0.0.1",
        port:3306,
        user:"root",
        password:"root",
        database:"test"
    },
    app:true,
    agent:false
  };
}

配置渲染模板

安装依赖

$ npm i -S egg-view-nunjucks

配置插件

$ view /config/plugin.js
module.exports = {
  nunjucks:{enable:true, package:"egg-view-nunjucks"}
};

项目配置

$ vim /config/config.default.js
module.exports = appInfo => {
  //view engine
  config.view = {
    root:path.join(appInfo.baseDir, "app/view"),
    cache:true,
    defaultViewEngine:"nunjucks", 
    defaultExtension:".html", 
    mapping:{".html":"nunjucks"}
  };
}

渲染模板配置

配置项 描述
root 配置视图根路径
cache 是否缓存路径
defaultExtension 配置文件默认扩展名
defaultViewEngine 默认渲染模板引擎
mapping 文件映射配置

配置静态文件

$ vim /config/config.default.js
module.exports = appInfo => {
  //static
  config.static = {
    prefix:"/",
    dir:path.join(appInfo.baseDir, "app/public"),
    dynamic:true,
    preload:false,
    maxAge:0,
    buffer:true
  };
}
配置项 描述
prefix 静态化URL前缀
dir 静态文件夹地址
dynamic 是否缓存静态资源
preload 启动项目开启缓存
maxAge 缓存时间
buffer 是否缓存到内存,默认prod缓存
上一篇下一篇

猜你喜欢

热点阅读