亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

TypeError:無法讀取未定義 Express 的屬性“使用”

TypeError:無法讀取未定義 Express 的屬性“使用”

慕婉清6462132 2022-07-01 10:19:50
當我使用“app.use”命令時,我的快速服務器遇到了一些問題在我的 task-routes.js 文件中,我有以下代碼import express from 'express';const router = express.Router();router.post('/task',(req, res) => {    res.send('post.task - create a task');});router.get('/task',(req, res) => {    res.send('get.task - get all tasks')});router.get('/task/:id',(req, res) => {    res.send('get.task/:id - get task by id')});router.put('/task',(req, res) => {    res.send('put.task - update a task')});router.delete('/task',(req, res) => {    res.send('delete.task - delete a task')});export default router;在我的 routes.js 文件中,我有這個import taskRoutes from './api/task/tasks-routes';export function registerRoutes(app) {app.use('/api',taskRoutes);}索引.jsimport express from 'express';const app = express()import {registerRoutes} from './routes';const port = 3000registerRoutes();app.get('/', (req, res) => res.send('Hello World!'))app.listen(port, () => console.log(`MEVN app listening at http://localhost:${port}`))這是我不斷收到的錯誤/Users/musabhamid/Desktop/mevn-stack copy/prod-server/routes.js:15  app.use('/api', _tasksRoutes2.default);      ^TypeError: Cannot read property 'use' of undefined    at registerRoutes (/Users/musabhamid/Desktop/mevn-stack copy/prod-server/routes.js:15:7)    at Object.<anonymous> (/Users/musabhamid/Desktop/mevn-stack copy/prod-server/index.js:14:28)
查看完整描述

2 回答

?
皈依舞

TA貢獻1851條經驗 獲得超3個贊

您缺少將 app 作為 Index.js 的參數傳遞


import express from 'express';

const app = express()

import {registerRoutes} from './routes';

const port = 3000

registerRoutes(app); // <- Here

app.get('/', (req, res) => res.send('Hello World!'))


app.listen(port, () => console.log(`MEVN app listening at http://localhost:${port}`))


查看完整回答
反對 回復 2022-07-01
?
慕容708150

TA貢獻1831條經驗 獲得超4個贊

app.use('/api',taskRoutes);

所以你打電話app.use

是什么app?

export function registerRoutes(app) {

這是您傳遞給的第一個參數registerRoutes

那是什么?

registerRoutes();

沒有一個。你沒有通過它的論點。


調用函數時,必須將 express 對象作為參數傳遞。


查看完整回答
反對 回復 2022-07-01
  • 2 回答
  • 0 關注
  • 124 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號