2

My Question is can we reload the view in ui-router if you are on same state. check my code at`http://plnkr.co/edit/MA7CuyH2RFrlaoAgBYog?p=preview

My app.js file is

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(){});

And index page is

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

Now click on Dashboard link here you will see a text box. fill any value in that. Now again click on Dashboard link. now the state should reload and all data of page should be reloaded including its controller. Please make sure to ui-router only.

Thanks

2
  • Possible duplicate? stackoverflow.com/questions/21714655/… Commented Jul 4, 2014 at 18:44
  • Hi Justin here the question is different. I want to reload the page with menu click if same menu is clicked Commented Jul 5, 2014 at 5:01

4 Answers 4

7

add attribute to the element with

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

example:

<a ui-sref-opts="{reload:true}" ui-sref="app.post.applicants">Applicants</a>
Sign up to request clarification or add additional context in comments.

Comments

1

Use ng-click and write a controller function with $state.go

Comments

0

You could catch the click in a "ng-click" and use the $state service to transition/reload pragmatically

Comments

0

I had this similar issue and I solved this in two simple way ...

First I wrote a function into related controller (my state was 'inbox' you can use your own ui-state):

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

Second call this function to anchor tag:

<a ng-click="reload()">Inbox</a>

Hope it will help. :)

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.