没有导出的成员

时间:2018-07-13 19:06:39

标签: node.js typescript express

我是Typescript的新手。我正在使用express js,但存在以下问题。当我运行服务器时,它显示为“ ..... / routes.ts”没有导出的成员“ router”。我一直在搜索,但没有成功。这些是我的文件。

在我的src / index.ts

import "reflect-metadata"
import * as express from "express"
import { router } from "./routes"

async function main() {
 const app = express()
 app.get('/api',router)
 app.listen(3000, () => console.log("Server running"))
}

main()

在我的src / routes.ts中

import * as express from "express";
var router = express.Router();

router.route('/user').get((req, res) => res.send("Hello world"));

module.exports = router;

1 个答案:

答案 0 :(得分:0)

这不是打字稿问题,您没有将router导出为命名导出,因此{ ... }语法将不起作用。

鉴于它似乎是默认导出,您可以使用

import router from './routes.js'

或者,如果您使用支持export语法的编译器,则可以将路由器导出为命名导出,即

export const router 

这将允许您通过{ router }进行导入。