angularJs小应用----计算购物金额-动态改变邮费

    function A($scope){
          $scope.iphone={    //---------创建iphone对象
          money : 50,   //默认价格
          num : 1,         //默认个数
          fre : 10           //默认邮费
          };
          $scope.sum=function(){    //-------计算费用
              return $scope.iphone.money * $scope.iphone.num;
          };
          $scope.$watch($scope.sum,function(newValue,oldValue){
              //console.log(newValue);//函数sum返回值--改变后的值
              //console.log(oldValue);//函数sum返回值--改变前的值
              $scope.iphone.fre = newValue >= 200 ? 0:10;
          });    
     }

     

 //-----------------------------$watch():监听函数---------------------------------//

        $watch()两个必选参数,一个可选参数

        //$watch()传入两个参数时,可以监听单值:变量或返回单值的函数

      //参数1为要监听的值,参数2为回调函数,即监听的值发生改变时要执行的函数

         $scope.$watch('iphone.money',function(){ 
              console.log('money改变');           //当iphone.money改变时触发
          });

          $scope.$watch('iphone',function(){
              console.log('对象改变');             //始终触发不到, 因为iphone是对象,不是单值的
          });


          $scope.$watch('iphone',function(){
              console.log('对象改变');          //iphone对象中任意一个成员改变都会触发到
          }, true );            // true:可以监听多值的集合


          $scope.$watch( 'iphone.money', function(newValue,oldValue){
              console.log(newValue);    //输出money改变后的值
              console.log(oldValue);      //输出money改变前的值
          });

 

   <div ng-controller='A' >
      <p> 价格:   <input type='text' ng-model='iphone.money'> </p>
      <p> 个数:   <input type='text' ng-model='iphone.num'> </p>
      <p> 费用:   <span> {{ sum() | currency:'¥' }} </span> </p>       
      <p> 运费:   <span> {{ iphone.fre | currency:'¥' }} </span></p>
      <p> 总额:   <span> {{ sum() + iphone.fre | currency:'¥' }} </span></p> 
   </div>  

过滤器

currency:货币格式化的方法

如:
1. {{ iphone.money * iphone.num | currency }}      -----$50.0
2. {{ iphone.money * iphone.num | currency:'¥' }} -----¥50.0 

    费用小于200时:


 费用大于200时:






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值