首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多步形成并与angular-ui-router共享数据

多步形成并与angular-ui-router共享数据
EN

Stack Overflow用户
提问于 2016-04-13 06:52:27
回答 1查看 53关注 0票数 0

我正在尝试创建一个多步骤表单,但在视图/状态之间共享数据时遇到了问题。我甚至不确定我这样做的方式是否准确,因为我还是个angular-ui-router新手。以下是我的路线:

代码语言:javascript
复制
.state('tab.newEventCategory', {
  url: '/activities/new-event-category',
  views: {
    'tab-patient': {
      templateUrl: 'templates/new-event-category.html',
      controller: 'ActivityDashboardCtrl'
    }
  }
})

.state('tab.newEventSubCategory', {
  url: '/activities/new-event-sub-category',
  views: {
    'tab-patient': {
      templateUrl: 'templates/new-event-sub-category.html'
    }
  }
})

我正在尝试使用上面的路线,这样一旦有人选择了一个类别,他们就会转到一个页面,在那里他们选择了一个子类别。下面是new-event-category页面:

代码语言:javascript
复制
<div ng-repeat="event_category in event_categories" class="padding">
    <a class="button button-block button-positive button-large" ng-click="moveToEventSubCategory(event_category)">
      {{event_category}}
    </a>
</div>

下面是页面的控制器:

代码语言:javascript
复制
.controller('ActivityDashboardCtrl', function($scope, $stateParams, EventCategory, $state) {
  $scope.formData = {};
  $scope.event_categories = EventCategory.query();

  $scope.moveToEventSubCategory = function(event_category){
    $scope.formData.category = event_category;
    $state.go('tab.newEventSubCategory');
  }
})

我的问题是,现在我希望newEventSubCategory状态能够访问相同的formData对象,这样它就可以添加子类别。在此之后,将有更多的页面到这个多步骤表单,我希望它们都可以访问相同的formData变量。我该怎么做呢?

EN

回答 1

Stack Overflow用户

发布于 2016-04-13 07:27:32

如果你想在控制器/状态之间通信,你最好选择@ronnie提到的:创建一个service或工厂。

如果你想弄清楚什么是服务以及如何使用它们,可以看看这个:AngularJS Step-by-Step: Services

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36585514

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档