繁体   English   中英

角度UI路由器,通过URL / URL变量保存状态?

[英]Angular ui-router, save state by url/url variables?

有一个有趣的问题,我正在尝试查看是否可以使用angulars ui路由器插件解决。 我想做的是通过自定义网址保存视图状态。

我已经建立了一个非常基本的示例,看这是否可行,然后我想对此进行抽象!

所以我很简单

$scope.test = false;

然后在页面上单击ng键,可以在true和false之间切换此测试变量。 所以我想看看是否可以保存该状态并将其传递给我-假设我将其更改为true,那么我希望能够保存一个URL,然后转到该URL,当我进入该URL时,然后将变量更改为true(而不是控制器中默认的false)

所以我想我可以尝试类似

url: "test/{form_id}"

(我假设这是这样工作的),但是我可能想传递的不仅仅是一个id。 最好的情况是我可以完全通过url传递一个对象(或者引用一个,我知道传递一个对象听起来很愚蠢),但是否则我假设在任一端我都必须建立一种方法来为id和解释它的方法。 如果我可以将其塑造为多态的,那将是很棒的,但是我的第一步是尝试在较低水平上做到这一点。

因此,我的想法是-每次单击更改时,都会设置一个变量,然后可以在url上进行设置。 如果将该URL提供给已登录该应用程序并转到该视图的某人,则控制器将从URL得知需要在加载时更改$ scope.test = true。 我想知道是否有可能用angular-ui-router来解决这个问题,如果可以,如果有人愿意提供一些指导,我将不胜感激。 感谢您的阅读!

您实际上无法传递参考,因为您正在谈论该应用程序的2个不同实例。 但是您可以对对象进行JSON编码,对其进行urlencode并将其传递到URL。 如果太大,将无法在所有浏览器中使用。 在许多情况下,拥有更多的语义URL也将是“更好”的选择,即与其传递一个较大的旧Blob,而使用有意义的参数并将其传递。

$ routeParams的文档位于https://docs.angularjs.org/api/ngRoute/service/ $ routeParams

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM