刷新页面之后如何在Angular Js中存储$ stateparams param值?

时间:2016-12-08 06:58:09

标签: angularjs angularjs-scope angular-ui-router

在按钮点击事件中,我的状态将从一个状态更改为另一个状态。我通过使用 ui-sref 传递Id值。

这是我对id的按钮声明: -       <button ui-sref="list({id:'{{id}}'}"></buton>

在州,我正在获得像

这样的价值
.state(list, {
 url: '/list',
 params:{id: 'null'},
 template:''
})

url不应该包含id值,这就是我选择上面的方法。在第一次加载时param值正常,但是当我要重新刷新页面时,param值再次变为null。

我的按钮位于一个控制器(a.controller.js)中,/ list是另一个控制器(b.controller.js)。更改状态后,我想要b.controller.js中的id。

我试过,但除了本地存储外,我正在为这种情况找到一个合适的解决方案。我不想将我的价值存储在本地存储中。所以任何人都可以帮我解决这个问题。

1 个答案:

答案 0 :(得分:0)

当你在angularJS中刷新你的页面时,它正常松散每一个想法(angularJs的主要内容是你不必刷新你的页面!)

如果您想保留一个值,您需要将其存储在带有API的数据库中,或者以更简单的方式将其存储在用户浏览器的本地存储中。

localStorage.setItem('todos', JSON.stringify($scope.todos));

在角度中使用简单的localstorage的例子 #Katie Harron

如果您调用refresh只是状态更改,则必须将值存储在$ rootScope