Javascript 当您在angular ui路由器中处于相同状态时重新加载状态

Javascript 当您在angular ui路由器中处于相同状态时重新加载状态,javascript,angularjs,routes,angular-ui-router,ngroute,Javascript,Angularjs,Routes,Angular Ui Router,Ngroute,我的问题是,如果您处于相同的状态,我们是否可以在ui路由器中重新加载视图。 请在` 我的app.js文件是 var app = angular.module('plunker', ['ui.router']); app.config(function($stateProvider) { $stateProvider .state("view1", { url: "/view1", templateUrl: "x.html" }) .state("view2", {

我的问题是,如果您处于相同的状态,我们是否可以在ui路由器中重新加载视图。 请在`

我的app.js文件是

var app = angular.module('plunker', ['ui.router']);
app.config(function($stateProvider) {
$stateProvider
  .state("view1", {
    url: "/view1",
    templateUrl: "x.html"
  })
  .state("view2", {
    url: "/view2",
    templateUrl: "y.html"
  })
})
app.controller("MainCtrl",function(){});
索引页是

<body ng-controller="MainCtrl">
<a href="#/view1">Accounts</a>
<a href="#/view2">Dashboard</a>
<div ui-view></div>

现在单击仪表板链接,您将看到一个文本框。在该字段中填入任何值。现在再次单击仪表板链接。现在状态应该重新加载,页面的所有数据都应该重新加载,包括其控制器。请确保仅使用ui路由器


谢谢

您可以在“ng click”中捕获单击,并使用$state服务以实用的方式转换/重新加载

我遇到了类似的问题,我用两种简单的方法解决了这个问题

首先,我在相关控制器中编写了一个函数(我的状态是“收件箱”,您可以使用自己的ui状态):

$scope.reload=function(){
$state.go('inbox',null,{reload:true});
}

第二次调用此函数以定位标记:

收件箱


希望能有所帮助。:)

将属性添加到具有

ui-sref=""ui-sref-opts="{reload:true}"
例如:

<a ui-sref-opts="{reload:true}" ui-sref="app.post.applicants">Applicants</a>
申请人

使用ng单击并编写带有$state的控制器函数。是否继续执行可能重复的操作?嗨,贾斯汀,问题不一样了。如果单击了相同的菜单,我想用菜单单击重新加载页面