在重學vue后,了解到這個計算屬性,理解了一點點,但是又無法想到什么時候能用到
------------計算屬性是基於它們的響應式依賴進行緩存的------------
get是基於其他的數據來獲取到computed里定義的那個數據
set是根據computed里定義的那個數據來改變其他的數據
暫時就理解了這些,理解到新的會更改的,下面給個案例,關於全選的
<html> <head> <title>vue5 全選</title> </head> <style> </style> <body> <div id="app"> <ul> <li ><span><input type="checkbox" v-model="allcheck"/></span>全選</li><br/> <li v-for="item in datalist"><span><input type="checkbox" v-model="item.status"/></span>{{item.xueli}}</li><br/> </ul> <input type="button" value="批量操作" /> </div> </body> <script src="vue.js"></script> <script src="axios.min.js"></script> <script> var datalist=[ {id:1,xueli:'小學',status:false}, {id:2,xueli:'初中',status:false}, {id:3,xueli:'高中',status:false}, {id:4,xueli:'大學',status:true} ]; var vm=new Vue({ el:"#app", data:{ datalist:datalist }, computed:{ allcheck:{ get:function(){ var newarr=[]; newarr=this.datalist.filter(function(item){ return !item.status; }); if(newarr.length==0){ return true; } }, set:function(value){ this.datalist.forEach(function(item){item.status=value}); } } } }); </script> </html>