# [art-template文檔](https://aui.github.io/art-template/zh-cn/docs/index.html)
## 1.安裝配置
~~~
npm install --save art-template
npm install --save koa-art-template
~~~
## 2.Example
~~~
const Koa = require('koa');
const render = require('koa-art-template');
const {resolve} = require('path');
const app = new Koa();
render(app, {
?root:resolve(__dirname, 'views'),
?extname: '.html', //后綴也可以寫成.art
?debug: process.env.NODE_ENV !== 'production'
});
?
app.use(async function (ctx) {
?await ctx.render('user');
});
?
app.listen(8080);
~~~
## 3.實例
~~~
const Koa = require('koa');
const router = require('koa-router')();
const render = require('koa-art-template');
const {resolve} = require('path');
const app = new Koa();
/* 配置模板引擎 */
render(app, {
? ?root: resolve(__dirname, 'views'),
? ?extname: '.html',
? ?debug: process.env.NODE_ENV !== 'production'
});
router.get('/', async ctx => {
? ?await ctx.render('index',{name:"chengchao"})
})
app.use(router.routes()).use(router.allowedMethods())
app.listen(8080)
~~~
## 4.基本語法
### 4.1 if
~~~
{{if isShow}}
? ? <p>加載更多</p>
{{/if}
~~~
- if-else
~~~
{{if isShow}}
<p>加載更多</p>
{{else}}
<p>不要加載</p>
{{/if}}
~~~
### 4.2 遍歷 each
~~~
{{each arr}}
? <p>{{$index}}-{{$value}}</p>
{{/each}}
~~~
### 4.3 模板繼承
#### 標準語法
~~~
{{extend './layout.art'}}
{{block 'head'}} ... {{/block}}
~~~
模板繼承允許你構建一個包含共同元素的模板“骨架”。范例
~~~
//骨架模板
<!--layout.html-->
<!doctype html>
<html>
<head>
? ?<meta charset="utf-8">
? ?<title>{{block 'title'}}My Site{{/block}}</title>
?
? {{block 'head'}}
? {{/block}}
</head>
<body>
? {{block 'content'}}{{/block}}
</body>
</html>
~~~
~~~
//index.js
<!--index.art-->
{{extend './layout.html'}}
?
{{block 'title'}}{{title}}{{/block}}
?
{{block 'head'}}
? ?<link rel="stylesheet" href="custom.css">
{{/block}}
?
{{block 'content'}}
<p>This is just an awesome page.</p>
{{/block}}
~~~
### 4.4 子模板
~~~
{{include './header.html'}}
~~~
### 4.5原文輸出
~~~
{{@value}}
~~~
- 第一章 入門
- 1-1 項目技術棧
- 1-1 promise
- 1-1-1 promise-ajax
- 1-1-1 util.promisify
- 1-2 async
- 1-2-1 async-await
- 1-2-2 async-util.promisify
- 1-3 async-map
- 1-3 iterator
- 1-4 generator
- 1-4-1 generator基礎
- 1-4-2 generator-ajax
- 1-5 process
- 1-0 參考教程
- 1-6 靜態方法
- 1-7 單例
- 第二章 ES-7
- 2-1 co
- 2-2 異步讀取文件
- 2-3 co-ajax
- 第三章 koa核心
- 3-1 server
- 3-2 koa的中間件
- 3-3 koa-session
- 3-3 koa-router
- 3-3-1 ctx.params動態路由
- 3-4 koa路由get傳值
- 3-5 中間件
- 3-5-1匹配路由之前設置一個中間件
- 3-5-2 中間件執行順序
- 3-5-3 錯誤處理中間件
- 3-6 ejs
- 3-6-1 ejs基本語法
- 3-7 koa-post
- 3-8 koa-static靜態資源中間件
- 3-9 art-template
- 3-10 koa-cookie的使用
- 3-11 koa-session
- 3-12 koa應用生產器
- 第四章
- 第一節 pug模板
- 第二節 puppeteer爬蟲
- 2-1 爬取豆瓣top250數據
- 2-2 爬取豆瓣劇情頁數據
- 第三節 將數據上傳到七牛
- 第五章 mongoBD
- 5-1 安裝
- 5-2 基本命令
- 5-3 mongoose連接數據庫
- 5-3-1 簡單連接數據庫
- 5-3-2 schema,model,entity
- 5-3-3 schema向數據庫中添加數據
- 5-3-4 豆瓣數據添加到數據庫
- 5-3-5 glob引入schema
- 5-3-6 schema的數據類型
- 5-4 從數據庫取得數據返回給前臺
- 5-5 mongo數據庫取數據生成接口