在$ stateprovider中将对象中的数据添加到url

时间:2016-08-30 21:24:01

标签: angularjs angular-ui-router

我想添加来自

的ID
-j

中的网址
$state.go('state1', {obj: {id: request.id, title: request.title}}

我使用

访问了Controller中的id
angular.module('app')  
  .config(function ($stateProvider) {
    $stateProvider
      .state('state1', {
        url : '/edit',
        params: {obj: null},
        ...
      }); 
  });

并尝试通过尝试将其添加到网址

vm.id = $stateParams.obj.id;

我尝试了一段时间,但是他们要么传递params(不是对象),要么他们正在传递一个对象但是使用静态URL。我是Angular的新手可以有人指出我失踪的东西吗?感谢。

1 个答案:

答案 0 :(得分:1)

网址中的参数需要与你传入的内容相匹配。试试这个:

$stateProvider
      .state('state1', {
        url : '/edit/:id',
        params: {obj: null},
        ...
      }); 

然后使用:

打电话
$state.go('state1', {id: request.id, obj: {id: request.id, title: request.title}}