Angularjs 如何在控制器中设置$stateParam的值?

Angularjs 如何在控制器中设置$stateParam的值?,angularjs,angular-ui-router,Angularjs,Angular Ui Router,在我的控制器中,我试图在angularapplication中进入不同的状态: $state.go('customer.items',{factory:'factA'}}); route.js文件中的我的状态如下所示: $stateProvider.state('customer.items', { url: '/items/:factory', resolve: { items: [ '$q', '$stateParams', 'car', function($q

在我的控制器中,我试图在angularapplication中进入不同的状态:

$state.go('customer.items',{factory:'factA'}});
route.js文件中的我的状态如下所示:

$stateProvider.state('customer.items', {
  url: '/items/:factory',
  resolve: {
    items: [
      '$q', '$stateParams', 'car', function($q, $stateParams, car) {
        var deferred, f, s;
        deferred = $q.defer();
        debugger;
        s = function(data) {
          return deferred.resolve(data);
        };
        f = function() {
          return deferred.reject();
        };
        car.all($stateParams.factory).then(s, f);
        return deferred.promise;
      }
    ]
  },
  views: {
    'tableView': {
      templateUrl: "templates/views/customer_items.html",
      controller: 'itemscontroller'
    }
  }
});

调试此代码时,$stateParams.factory是“”而不是'factA'?如何在来自控制器的$stateParams中设置此factory属性?

创建要复制的plunker。我试过了,效果很好:在$state.go('customer.items',{factory:'factA'})中我也看不到任何问题;也许你再贴一张}在那里?我不认为你真正的代码有这个问题