我正在尝试使用Angular.js单击按钮时复制并粘贴div。这是我的代码笔:http://codepen.io/summerfreeze/pen/VjqJYW。我希望“添加订单行”按钮添加另一个.orderline div。我是Angular的新手,我显然犯了一些错误,因为它不起作用。代码有什么问题?

$scope.orderlines=[]
$scope.orderline = '';
$scope.addline = function(){
    $scope.items.push($scope.orderline);
};

最佳答案

我更新了您的密码笔。我做了:

将$ scope.orderline更改为object的字符串。现在,它代表一条订单行。当用户放置来自表单的值时使用:

$scope.orderline = {};


更改数量和总计上的绑定(现在绑定到$ scope.orderline上):

<input ng-model="orderline.quantity" placeholder="Quantity">
<div flex >{{orderline.quantity * selectedItem.price}}</div>


更改ng-repeat(现在在订单行和商品上循环称为命名行):

<div ng-repeat='line in orderlines'>
         {{line}}
     </div>


最后,更新addLine以复制orderLines中的订单行:

$scope.addline = function(){
    $scope.orderline.name = $scope.selectedItem;
    $scope.orderlines.push(angular.copy($scope.orderline));
};


这是更新的监听器http://codepen.io/anon/pen/NAJqZy

08-15 16:30