2017-01-20 112 views
0

我想從Koa服務器傳遞一些環境變量到客戶端。在表達我可以做一些像res.render('index', { data: 'someData' });然後我可以訪問data。在科阿我看不到如何做到這一點。它提到使用context.state,但我找不到任何如何在客戶端檢索這個示例。Koa將數據從服務器傳遞到客戶端

+0

也許使用類似https://www.npmjs.com/package/koa-locals –

回答

1

你可以在Koa做類似的事情,你只需要使用正確的中間件。如果您使用supported engines之一,請嘗試koa-views

下面是一個完整的例子(這個例子假設你使用興亞v1和EJS爲你的模板引擎):

app.js

const Koa = require('koa') 
const views = require('koa-views') 
const router = require('./routes') 

const app = new Koa() 

app.use(views(__dirname + '/views', { extension: 'ejs' })) 
app.use(router.routes()) 
app.use(router.allowedMethods()) 

app.listen(3000) 

routes.js

const router = require('koa-router')() 

router.get('/', function *() { 
    yield this.render('index', { title: 'Home' }) 
}) 

router.get('/about', function *() { 
    yield this.render('about', { title: 'About' }) 
}) 

module.exports = router 

只需將您傳遞給中間件的參數extension更改爲基於此參數您正在使用的模板引擎。

相關問題