AngularJS – $route.reload() 不工作
Posted
技术标签:
【中文标题】AngularJS – $route.reload() 不工作【英文标题】:AngularJS – $route.reload() not working 【发布时间】: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 您要重新加载视图部分还是完整页面?
【参考方案1】:
$window.location.reload() 基本上会刷新页面,就像您按 F5 进行刷新一样。
我所追求的是重新加载页面中的特定视图,而不是刷新整个页面。
【讨论】:
【参考方案2】:如果您想重新加载完整页面而不是路由刷新,请注入 $window
服务并调用 location.refresh
$window.location.reload();
【讨论】:
那会刷新所有页面,比如F5,对异步页面没用。以上是关于AngularJS – $route.reload() 不工作的主要内容,如果未能解决你的问题,请参考以下文章