<!DOCTYPE html>
<html lang="en" ng-app="M20">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="css/bootstrap.css">
</head>
<body>
<section class="container" ng-controller="C20">
<p>完整版购物车计算器</p>
<button class='btn btn-success' ng-click='addProduct()'>添加商品</button>
<hr/>
<div>
<p ng-repeat="(index, item) in cart" class='alert alert-success'>
单价:<span ng-bind='item.price'></span>
数量:<input type='number' ng-model="item.count">
小计:<span ng-bind='item.price*item.count'>0</span>
</p>
</div>
<div>总计:<span ng-bind='getTotal()'></span></div>
</section>
<script src="js/jquery-1.11.3.js"></script>
<script src="js/angular.js"></script>
<script>
angular.module('M20', ['ng']).
controller('C20', function($scope, $interval){
$scope.cart = []
$scope.cart.push({price: 10.5, count: 2});
$scope.cart.push({price: 5.5, count: 5});
$scope.addProduct = function(){
let p = {price: Math.round(Math.random()*500)/10, count: Math.ceil(Math.random()*10)}
$scope.cart.push(p);
console.log($scope.cart.count);
}
$scope.getTotal = function(){
let total = 0;
angular.forEach($scope.cart, function(v, k){
total += v.count * v.price;
console.log(v);
})
return total
}
})
</script>
</body>
</html>