如何解决" Uncaught TypeError:restVar.reload不是一个函数"?

时间:2017-03-12 08:44:23

标签: javascript jquery

我的网址是这样的:http://myshop.dev/member/message/inbox/detail/58c508e9607a1d16f0006b3f

我的函数javascript是这样的:

reloadMessage() {
    setTimeout(function () {
        var vars = location.href;
        var arrVars = vars.split("/");
        var lastVar = arrVars.pop();
        var lastVar = arrVars.pop();
        var restVar = arrVars.join("/");
        restVar.reload(true);
    }, 1500);
}

我想在调用reloadMessage函数时,它会将页面重新加载到url:

http://myshop.dev/member/message/inbox

但它不起作用

存在这样的错误:

  

未捕获的TypeError:restVar.reload不是函数

我该如何解决?

更新:

如果我这样做:console.log(restVar),结果为:

http://myshop.dev/member/message/inbox

调用reloadMessage函数时,我希望它会重新加载page / url:http://myshop.dev/member/message/inbox

2 个答案:

答案 0 :(得分:1)

您声明restVar的代码:

var restVar = arrVars.join("/");

返回一个数组,它不会将'reload()'作为函数提供。获得新网址后,您可以尝试使用window.location(https://www.w3schools.com/js/js_window_location.asp

答案 1 :(得分:0)

不要使用reload。只需更改位置:

function reloadMessage() {
    setTimeout(function () {
        var vars = location.href;
        var arrVars = vars.split("/");
        arrVars.pop();
        arrVars.pop();
        location = arrVars.join("/");
    }, 1500);
}