0

如何使用 angularjs 在 step 内创建一组步骤,我的意思是 step 内的步骤类型的向导:

我知道可以使用具有三个模板的 ng-route 来完成,然后每个模板都包含一组步骤,但是如何管理步骤组的数据到下一步?:(

4

1 回答 1

0

听起来您想将 ng-route 与大概多个控制器一起使用来驱动每个步骤,而您的问题是,将数据放在哪里,因为每个控制器都是一个实例,当您从一个控制器移动到下一个。

如果我理解正确,那么您可能会考虑使用角度工厂来保存您的数据模型。然后沿途将工厂注入每个控制器,以便它可以读取并将其部分数据写入工厂。工厂是单例的,因此它们的状态(以及数据的状态)不会随着您浏览这些步骤而改变。

这是一个非常简单的保存数据的服务:

(function () {
    'use strict';

    angular.module('myApp').factory('myDataService',
    [function () {
        var factory = {
            someProperty: 'foo',
        };

        return factory;
    }]);
})();

在您的控制器中,注入myDataService,然后您可以像这样获取和设置:

$scope.someProperty = myDataService.someProperty; //'foo'
myDataService.someProperty = 'bar';
$scope.someProperty = myDataService.someProperty; //'bar'
于 2015-04-30T22:36:55.990 回答