构建一个大型应用程序,需要使用Angular对数据管理进行一些澄清

时间:2013-10-29 20:00:25

标签: javascript angularjs

我的应用程序将基于房屋,所以我的示例将在下面格式化。将能够创建包含房屋信息的项目,包括每侧,以及每侧的窗户。

现在我正在使用vanilla对象来管理我的数据。我正在使用ng-repeat列出两侧及其测量值。这工作正常,除了我觉得我可以做“有角度的方式”并且我没有利用它。

所以像这样:

function Side(name)
{
    this.name = name;
    this.measurements = [];
    this.subtractions = [];
    this.photos = [];
    this.expanded = false;
    this.addMeasurement = function()
    {
        var m = new SideMeasurement();
        m.name = 'Measurement '+(this.measurements.length+1);
        this.measurements.push(m);
    }
}

function SideMeasurement()
{
    this.name = '';
    this.width = '';
    this.height = '';
}


rbpApp.controller('newProjectCtrl', ['$scope', function($scope) {

    var defaultSideNames = ['Front','Left Side','Right Side','Back'];
    var sides = [];


    for(var i = 0; i<defaultSideNames.length; i++)
    {
        var side = new Side(defaultSideNames[i]);
        side.addMeasurement();
        sides.push(side);
    }

    $scope.sides = sides;

}]);

在我需要为每一方添加一些行为之前,这一切都很好。就像可能会改变它的外观,或者根据用户交互向它添加行为。每一方都应该是指令吗?每一方都可以进行多次测量,那么它们也应该是指令吗?此外,每个房子都是一个项目,那么如何将其包装到一个易于在控制器之间传递的对象中呢?此数据还必须存储在本地存储中,并通过Web服务。

非常感谢您的帮助。

0 个答案:

没有答案