Javascript AngularJS使用ng repeat重新绘制div列表

Javascript AngularJS使用ng repeat重新绘制div列表,javascript,angularjs,Javascript,Angularjs,我想在用户选择不同的包后重新绘制div列表,但我找不到一种方法让AngularJS在选择包后重新绘制div。以下是我的示例代码: 或以下代码: Html {{car.name} {{car.selected_package.one}} {{car.selected_package.two} {{car.selected_package.three}} {{car.selected_package.four}} {{car.selected_package.five}} {{car.packag

我想在用户选择不同的包后重新绘制div列表,但我找不到一种方法让AngularJS在选择包后重新绘制div。以下是我的示例代码:

或以下代码: Html


{{car.name}
{{car.selected_package.one}}
{{car.selected_package.two}
{{car.selected_package.three}}
{{car.selected_package.four}}
{{car.selected_package.five}}
{{car.packages[i].name}
Javascript

var app = angular.module('myApp', []);
app.filter('range', function () {
    return function (input, total) {
        total = parseInt(total);
        for (var i = 0; i < total; i++)
        input.push(i);
        return input;
    };
});

app.controller('CarPackageCtrl', ['$scope',

function ($scope) {
    $scope.car = new Object();
    $scope.car.name = "Keslar";
    $scope.car.isShowPackageSelect = true; // should init to false but having trouble with getting ng-mouseover to work, so setting it to false for now
    var package = new Object();
    package.name = "Basic";
    package.one = "stereo";
    package.two = "sunroof";
    package.five = "spoiler";
    $scope.car.packages = [];
    $scope.car.packages.push(package);

    var package2 = new Object();
    package2.name = "Intermediate";
    package2.two = "sunroof";
    package2.three = "GPS";
    package2.four = "rear video";
    package2.five = "spoiler";
    $scope.car.packages.push(package2);

    var package3 = new Object();
    package3.name = "Power";
    package3.one = "stereo";
    package3.two = "sunroof";
    package3.three = "GPS";
    package3.four = "rear video";
    package3.five = "spoiler";
    $scope.car.packages.push(package3);

    $scope.car.selected_package = $scope.car.packages[0];
    $scope.showPackageSelect = function showPackageSelect($scope) {
        $scope.car.isShowPackageSelect = true;
    }
    $scope.hidePackageSelect = function hidePackageSelect($scope) {
        $scope.car.isShowPackageSelect = false;
    }
    $scope.setPackage = function setPackage($scope, package) {
        $scope.car.selected_package = package;
    }
}]);
var-app=angular.module('myApp',[]);
应用过滤器('范围',函数(){
返回函数(输入,总计){
总计=parseInt(总计);
对于(变量i=0;i
如果我没听错的话,你的意思是这样的

$scope.setPackage = function(pack){
    $scope.car.selected_package = pack;
};

你所说的“重画”是什么意思?@ThomasP1988,每辆车的.packages[i]都有不同数量的物品,因此如果car.selected\u packages比前一辆车的物品多/少,那么物品的数量(因此divs)应该重画,不是吗?哇,是的,正是我想要的。我是用$scope.setPackage=函数setPackage($scope,package){$scope.car.selected_package=package;}完成的,你能告诉我为什么当我有$scope include时,它不工作吗?我认为如果我们从父控制器设置某些内容,则始终使用$scope。
$scope.setPackage = function(pack){
    $scope.car.selected_package = pack;
};