Angularjs 如何以角度将值从一条管线传递到另一条管线?
我使用的是角形路由器,我有一个类似于下面的路由Angularjs 如何以角度将值从一条管线传递到另一条管线?,angularjs,angular-routing,Angularjs,Angular Routing,我使用的是角形路由器,我有一个类似于下面的路由 angular.module("manageAbcApp", ["myApp", "ngRoute"]) .config(['$routeProvider', function($routeProvider) { $routeProvider .when('/list', { templateUrl: '/Scripts/app/view
angular.module("manageAbcApp", ["myApp", "ngRoute"])
.config(['$routeProvider', function($routeProvider) {
$routeProvider
.when('/list', {
templateUrl: '/Scripts/app/views/abc/AbcList.htm',
controller: 'ListAbcController'
})
.when('/view/:id', {
templateUrl: '/Scripts/app/views/abc/AbcDashboard.htm',
controller: 'DashboardAbcController'
})
// more...
.otherwise({
redirectTo: '/list'
});
}]);
如您所见,有两条路线,一条用于列表,另一条用于为列表选择的项目的仪表板
在列表路径中,选择并显示一个列表视图,其中我显示了一个包含一些数据的网格,该网格中的一列是可单击的名称列,单击该列,我将路径更改为href=/view/{row.Id}
这个很好用
但是,如何将一些附加参数传递给仪表板ABCController,如名称或任何其他详细信息
编辑:我想我可以使用一个对这两个控制器都通用的服务,然后在服务中单击“更新某些模型”。但我不想使用ng click,因为如果我这样做,我将失去允许用户在新选项卡中打开我的链接、复制粘贴、共享等的选项。使用$rootscope分配值,例如$rootscope.name='name'或使用get参数
.when('/view/:id?name=&id=', {
templateUrl: '/Scripts/app/views/abc/AbcDashboard.htm',
controller: 'DashboardAbcController'
})
比如说: 并且,您可以创建如下链接:
<a href="#/home/1/some_name/other/details?random=random">Home</a>
注意:您可以将其他数据作为不希望固定到路由中的路由参数传递。如果您的目的是将数据传递到另一个无法从其URL重建的路由,那么我认为这将导致用户无法在新选项卡中正确打开链接、复制、粘贴、共享等?
<a href="#/home/1/some_name/other/details?random=random">Home</a>