【问题标题】:AngularJS – $route.reload() not workingAngularJS – $route.reload() 不工作
【发布时间】:2014-07-22 07:46:28
【问题描述】:

我正在尝试使用$route.reload() 重新加载页面:

var App = angular.module("App", ["ngRoute"]);  
var idx = 0;  

App.controller("List", function ($scope, $route) {
    $scope.changeWallet = function (index) {
        idx = index;
        $route.reload();
        console.log("success");
    };
}

"success" 显示在控制台中,但没有任何反应。
我怎样才能解决这个问题?

【问题讨论】:

  • 你在使用 ui-router 吗?
  • 所以你只想刷新模板吗?
  • 先从缓存中删除模板,然后尝试重新加载模板。添加这个“var currentPageTemplate = $route.current.templateUrl; $templateCache.remove(currentPageTemplate);”在重新加载函数调用之前。
  • 我收到了undefined is not an object (evaluating '$route.current.templateUrl')
  • 我不相信这与模板缓存有任何关系。 @supertrall 您要重新加载视图部分还是完整页面?

标签: javascript angularjs


【解决方案1】:

$window.location.reload() 基本上会刷新页面,就像您按 F5 进行刷新一样。

我所追求的是重新加载页面中的特定视图,而不是刷新整个页面。

【讨论】:

    【解决方案2】:

    如果您想重新加载完整页面而不是路由刷新,请注入 $window 服务并调用 location.refresh

    $window.location.reload();

    【讨论】:

    • 那会刷新所有页面,比如F5,对异步页面没用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-22
    • 2017-04-13
    • 2014-05-03
    • 2016-01-15
    • 1970-01-01
    相关资源
    最近更新 更多