egg.js 使用與總結
阿新 • • 發佈:2019-02-08
腳手架安裝
1、安裝
$ npm i egg-init -g
$ egg-init egg-example --type=simple
$ cd egg-example
$ npm i
2、啟動專案
npm run dev
然後瀏覽器開啟http://localhost:7001 就可以看到 “hellow,egg” 字樣說明執行成功。
基礎編寫
1、靜態資源(images,css,js等檔案)放到app/public 目錄即可;
2、模板渲染:
絕大多數情況,我們都需要讀取資料後渲染模板,然後呈現給使用者。故我們需要引入對應的模板引擎。
1). 先安裝對應的外掛 egg-view-nunjucks :
$ npm i egg-view-nunjucks --save
2). 開啟外掛:
// config/plugin.js
exports.nunjucks = {
enable: true,
package: 'egg-view-nunjucks'
};
// config/config.default.js
// 新增 view 配置
exports.view = {
defaultViewEngine: 'nunjucks',
mapping: {
'.tpl': 'nunjucks',
},
};
資料庫相連
基礎語法
1、controller 中指向頁面:
yield this.ctx.render(‘news/list.tpl’,datalist);
2、頁面中迴圈:
<ul>
{% for item in list %}
<li>
<a href="{{item.url}}">{{item.title}}</a>
</li>
{% endfor %}
</ul>
3、控制器中獲取動態路由:
1). router.js 中配置路由
router.get('/list/:id', controller.list .checkId);
2). controller 中獲取路由引數
* checkId(){
const {ctx} = this;
ctx.body = `"您輸入的是:"+${ctx.params.id}`;
}
瀏覽器:
4、控制器中傳參給頁面:
1). 控制器中定義引數的值
2). 頁面獲取引數
瀏覽器中:
5、自定義工具類及其引用方法:
1). 在 app目錄下新建一個util的資料夾,這裡用來放置公用類
2). 在 helper.js 中定義
3). 在controller 中的js檔案裡使用
瀏覽器: