2017-08-01 3 views
0

これで、URLに応じてリクエストを別のコントローラにリダイレクトしようとしています。URLに応じて異なるコントローラにリダイレクト

マイserver.js

const express = require('express'); 

var app = express(); 

var router = express.Router(); 

// controllers 
var { loginController } = require('./controller/loginController'); 

// Specify routes 
app.use('/test', loginController); 


app.listen(3000,() => { 
    console.log('started on port 3000'); 
}); 

module.exports = { app } 

URLがある場合は今/テストは、私は、私は以下のいるloginController内、loginControllerに要求をリダイレクトしたいと思います:

const express = require('express'); 
var router = express.Router(); 

router.get('/', (req, res) => { 
    res.send('inside logincontroller'); 
}); 

非常に短いと甘いですしかし、node server.jsを実行すると、次のエラーメッセージが表示されます。Router.use() requires middleware function but got a undefined今、私はRouter Useを通過しましたが、少し混乱しています(初心者)私はミドルウォーを持っていません現在e。

誰かがURLが/test

+0

loginControllerで 'router'をエクスポートするのを忘れました –

+0

5行目の' loginController'の初期化は私には分かりません。 'var {a} = 1;を試みると、私のために変数' a'に 'undefined'が代入されます。 – ikkuh

+0

@CarmeloCatalfamoルータをエクスポートした後にも同じエラーが発生する –

答えて

0

server.js

const express = require('express') 

// Controllers 
var loginController = require('./controller/loginController') 

var app = express() 

// Specify routes 
app.use('/test', loginController) 

app.listen(3000,() => { 
    console.log('started on port 3000') 
}) 

loginController.js

const express = require('express') 

var router = express.Router() 

router.get('/', (req, res) => { 
    res.send('inside logincontroller') 
}) 

module.exports = router 
あるとき、私は loginControllerに要求をリダイレクトするに取り掛かる方法を私に説明することができるだろう

あなたがhttp://localhost:3000/testを訪問すると、 'logincontrollerの中に'出力が得られます

+0

の例を使用して回答をお送りします。 –