Я установил koa, а затем установил koa-views. После этого я скопировал пример кода из KOA-Views документы и вставить его в index.jsПочему я получаю сообщение об ошибке «app.use() требует функции генератора« с использованием промежуточного программного обеспечения koa-views?
'use strict';
const koa = require('koa');
const app = koa();
var views = require('koa-views');
// Must be used before any router is used
app.use(views(__dirname + '/views', {
map: {
html: 'underscore'
}
}));
app.use(function* (next) {
this.state = {
session: this.session,
title: 'app'
};
yield this.render('user', {
user: 'John'
});
});
Когда я пытаюсь запустить этот код с помощью команды node index.js
я получаю сообщение об ошибке:
В чем проблема? Почему это не работает?
p.s.
node version: v6.9.5;
koa version: 1.2.5;
koa-views version: 5.2.0
Thaks много. Это помогло! –
Koa 2 использует функции 'async' вместо функций генератора для своего промежуточного программного обеспечения. Когда вы используете промежуточное программное обеспечение, например 'koa-views', вам нужно убедиться, что вы используете правильную версию в зависимости от того, какую версию Koa вы используете. 'koa-views @ 4.1.0 @' все еще использует функции генератора для своего промежуточного программного обеспечения, поэтому он работает здесь. – saadq