位置:电子教程 > Vue.JS入门教程 (如果看不到内容请使用360浏览器) 推荐学习资源
Vue.js入门
Vue.js 数据绑定
Vue.js中的指令
Vue.js 表单和双向数据绑定
Vue.js 条件和循环指令
Vue.js 循环语句v-for
Vue.js 样式绑定
Vue.js 事件处理器
Vue.js 监听属性
Vue.js 计算属性
Vue.js 组件 Component
Vue.js 自定义指令
Vue.js 路由
Vue.js 过渡和动画
Vue.js 响应接口
Vue.js中Ajax(Axios)
当前阅读教程:Vue.JS入门教程 > 简单的购物车
阅读(22555525)      收藏       赞(5685)      分享
上一篇: 千米与米之间的换算 下一篇: 全选与取消全选
代码
<!DOCTYPE html>
<html>
<head>
     <meta charset="utf-8">
     <title>Vue.JS-监听属性-简单的购物车</title>
     <!--加载本地vue.js的框架-->
    
     <script src="vue2.2.2.min.js"></script>    
    <!--定义购物车的表格样式-->  
   <style type="text/css">
     table {
             border: 1px solid black;/*黑色、1px的边框*/
     }
     table {
             width: 100%;/*宽度*/
     }
    
     th {
             height: 50px;/*高度*/
     }
     th, td {
             border-bottom: 1px solid #ddd;/*底部边框*/
     }       
     </style>
</head>
<body>
 
<!--定义div区块的id的值,这里定义的值为"app",后面vue会使用该值-->
<div id="app"> 
<!--定义购物车表-->
<table >
    <!--标题部分-->
    <tr>
        <th>序号</th>
        <th>商品名称</th>
        <th>商品价格</th>
        <th>购买数量</th>
        <th>操作</th>
    </tr>
    <!--下面循环显示数组sjs的手机产品内容-->
    <!--sjs是一个对象数组,每个数组的元素代表一个商品的信息:产品id、产品名称、价格、数量-->
    <!--下面代码中的sj 代表一个产品对象-->
    <tr v-for="sj in sjs">
        <td>{{sj.id}}</td><!--商品id,对象内的属性值访问使用点号.-->
        <td>{{sj.mingcheng}}</td><!--商品名称,对象内的属性值访问使用点号.-->
        <td>{{sj.jiage}}</td><!--商品价格,对象内的属性值访问使用点号.-->
        <td>
            <!--每次点击数量减1-->
            <button v-on:click="sj.shuliang=sj.shuliang-1" >-</button>
            {{sj.shuliang}} <!--显示当前的数量-->
            <!--每次点击数量加1-->
            <button v-on:click="sj.shuliang=sj.shuliang+1">+</button>
        </td>
        <td>
            <!--讲对应的商品数量重新设置为0-->
            <button v-on:click="sj.shuliang=0">清0</button>
        </td>
    </tr>
</table>
<div>总价:{{feiyong()}}</div>
</div>
    
<script>
//Vue语句-开始        
var vm = new Vue({
  el: '#app', //app为前面div区块的id的值,通过"#"号绑定
  data: {
     //定义一个产品数组,每个数组的元素是一个对象,每个对象是包含手机的产品信息
     //下面的数组定义了3个产品
     sjs:[
             {
                      id:1,
                      mingcheng:"iphone 6",
                      jiage: 3000,
                      shuliang:1
             },
             {
                      id:2,
                      mingcheng:"iphone 7",
                      jiage: 5000,
                      shuliang:1
             },
             {
                      id:3,
                      mingcheng:"iphone 8",
                      jiage: 7000,
                      shuliang:1
             }                                 
     ]
  },
  //方法定义区块
  methods:{
       //自定义一个方法,用于计算所有的产品费用
       feiyong:function(){
               var fy = 0; //初始化
               //下面根据产品数组的长度,循环叠加计算出总费用
               for(var x=0;x<this.sjs.length;x++){
                        fy = fy + this.sjs[x].jiage * this.sjs[x].shuliang;
               }
                return fy; //返回值
       }
  }
})//Vue语句-结束
 
</script>
    
</body>
</html>
效果图

小白教程网www.2d5.net

image.png


上一篇: 千米与米之间的换算 下一篇: 全选与取消全选
毕业设计网             广告联系QQ:45157718(微信同号)