Не удается найти маршруты в Koa2, возникает ошибка TypeError: route.routes не является функцией - PullRequest
0 голосов
/ 07 сентября 2018

Я работаю над Node Koa2 API. Я выполняю операции CRUD с Mongoose . Когда я работаю только с одним файлом ("app.js"), он работает нормально. Но когда я разделяю его на контроллеры, маршруты и модель, он показывает следующую ошибку: TypeError: route.routes не является функцией в файле app.js. Заранее спасибо за помощь.

Описание ошибки:

enter image description here

import Koa from 'koa';
const BodyParser = require("koa-bodyparser");
const logger = require('koa-logger');

import router from './routes/index';


require('mongoose');
require('./config.js');

const app = new Koa();

// Use the bodyparser middlware
app.use(BodyParser());
app.use(logger());


app
.use(router.routes())
.use(router.allowedMethods());


app.listen(3001, () =>{
console.log('Server is running on port: 3001');
})
export default app;

Ответы [ 2 ]

0 голосов
/ 07 сентября 2018

Согласно вашей проблеме, например, Ваш путь к файлу индекса (./routes/index). Затем код в app.js выглядит следующим образом: -

 var index = require('./routes/index');
app.use('/',index);
0 голосов
/ 07 сентября 2018

Добро пожаловать в SO, измените следующее в вашем коде:

app.use(router.routes()) //replace for
app.use('/', router)

Надеюсь, это решит проблему.

...