javascript - koa 使用redirect跳轉不起作用,求大神看看是為什麼
高洛峰
高洛峰 2017-06-26 10:54:50
0
2
1905

//這是koa啟動檔
var koa = require('koa');
var path = require('path');
var router = require('koa-router') ();
var server = require('koa-static');

var datas = require('./app/router/datas');
var index = require('./app/router/index');

var app = new koa();

app.use(server(path.join(__dirname, 'app')));

router.use('/',index.routes());
router.use('/datas',datas.routes());

app.use(router.routes());

app.on('error', function(err,ctx){

console.log(err);

});

app.listen(9999,function(){

console.log('服务器已开启,端口9999,浏览器中打开:localhost:9999');

});

//這是index文件,index中使用了router.redirect方法
var router = require('koa-router')();

router.get('/', function() {

console.log('确实已经进来了');
try {
   router.redirect('', 'view/login/login.html');
} catch (error) {
    console.log(error);
}

});

module.exports = router;

運行時,頁面輸入localhost:9999,控制台確實打出“確實已經進來了”,但是頁面就是不跳轉,這到底是為什麼? ?幫忙。小白在學koa!

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回覆(2)
学霸

我寫express時踩過這樣的坑,當時好像是因為listen沒有end。所以程式就一直在掛著。

你在redirect後面加個router.end() //koa應該有這樣的方法

世界只因有你

這個問題的原因是對router.redirect()方法理解不夠的原因。真正的使用方法是:

router.redirect('back',url)

'back'其實是一個特殊的標識符,代表了Referrer。第二個參數才是跳轉的新URL。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板