javascript - 使用 UI-Router 避免在 URL 更改时重新加载页面

标签 javascript angularjs navigation angular-ui-router

我正在使用 ui-router 在我的网络应用程序中导航。

我有一个搜索页面,我希望用户能够保存包含当前搜索字符串的 URL,以便他可以共享它。

要更新每个搜索字符串更改的 URL,而不需要重新加载页面,我确实喜欢文档中所说的:

$state.go('.', { searchString: $scope.searchString }, { location: 'replace', notify: false });

但是,根据 UI-Router 库版本,行为完全不同:(观看浏览器控制台)

使用版本0.2.10:JSFiddle ui-router 0.2.10

==> 结果符合预期,修改 URL 没有任何作用。

使用版本0.2.11:JSFiddle ui-router 0.2.11

==> View Controller 在每次 $state.go() 调用时重新加载

使用版本0.2.12:JSFiddle ui-router 0.2.12

==> 根本找不到 ui-router

使用版本0.2.13:JSFiddle ui-router 0.2.13+

==> 从 0.2.13 版本开始, View Controller 不会在每次 $state.go() 调用时重新加载。但是,当重定向到另一个路径时,搜索 View Controller 会重新实例化。

我很困惑。是否有 ui-router 用户知道这些行为变化。前一种是否符合预期?或者这是一个错误?

谢谢

最佳答案

是的,他们意识到了这种行为变化,并且现在在版本 0.2.15 上完全稳定。 。这是以前的一个错误,但从 0.2.15 版本开始不再存在。

查看全部 releases .

关于javascript - 使用 UI-Router 避免在 URL 更改时重新加载页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35131453/

相关文章:

javascript - 从中断的地方重新启动 CSS3 动画?

javascript - 如何使用 Yarn 将 TypeScript 转换为 JavaScript?

javascript - 如何修复 "Uncaught Error: [$injector:modulerr]"错误?

angularjs - 如何从$resource请求中获取Http状态码

javascript - Handlebars 代码有什么问题?

javascript - 尝试从电子表格中获取值时获取 "undefined"

ios - 导航组中的自定义后退按钮(Titanium Mobile)

ios - 从按钮开始

javascript - Bootstrap Angular.js Accordion 不会自动折叠

html - Css 导航子菜单移动不起作用