Angular 改变url参数而不重新视图

本文探讨了在AngularJS中实现深度链接的问题,特别是如何在不触发视图重新渲染的情况下更新URL。作者正在构建一个仪表板系统,希望实现小部件的最大化视图并通过URL直接访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我构建一个仪表板系统AngularJS,我遇到一个问题通过$location.path与设置的url
在我们的指示板,我们有一堆的小部件。每个显示更大的最大化观点当你点击它。我们正试图设置深度链接,允许用户链接到一个仪表板部件最大化。
目前,我们有两个路线,看起来像/dashboard/:dashboardId/dashboard/:dashboardId/:maximizedWidgetId
当用户最大化一个小部件,我们更新url使用位置。路径,但这是导致视图重新呈现。因为我们所有的数据,我们不想重新加载整个看来,我们只是想更新URL。有办法设置url不会引起重新呈现的视图吗?

HTML5Mode被设置为true。


App.config(function($routeProvider) {
  $routeProvider.when('/dashboard/:dashboardId', {reloadOnSearch: false});
});
<a href="#/dashboard/1?maximizeWidgetId=1">Maximum This Widget</a>
or
$location.search('maximizeWidgetId', 1);

$scope.$on('$routeUpdate', function(scope, next, current) {
   // Minimize the current widget and maximize the new one
});
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值