因此,我尝试使用express和nodejs创建RESTful api。当我运行npm start启动服务器时,它抛出一个错误,说Router.use()需要一个中间件,但是没有定义。任何想法可能是问题。我的代码粘贴在下面。
预先感谢
server.js
import express from 'express';
import bodyParser from 'body-parser';
import { router as Orders } from './routes/order';
const app = express();
// PORT Number
const PORT = process.env.PORT || '3000';
// Setting up the body parser middleware
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
// Setting up middleware for a specific route
app.use('/api', Orders);
app.listen(PORT, () => {
console.log(`Running application on port ${PORT}`);
});
order.js路线
import express from 'express';
const router = express.Router();
router.get('/', (req, res, next) => {
res.send('Hello from api');
next();
});
export default router;
答案 0 :(得分:0)
使用默认导出时:
export default router;
您应该使用以下语法导入它:
import Orders from './routes/order'
或者,如果要保持导入语法不变,可以更改导出,使其不是默认设置:
export { router }