批改状态:合格
老师批语:

<div class="app"><!-- 单分支 --><p v-if="flag">{{msg}}</p><button @click="flag= !flag" v-text="tips = flag ? `隐藏` : `显示`"></button><!-- 多分支 --><p v-if="point > 1000 && point <2000">{{grade[0]}}</p><p v-else-if="point >= 2001 && point < 3000">{{grade[1]}}</p><p v-else-if="point >= 3001 && point < 4000">{{grade[2]}}}</p><p v-else-if="point >=4000">{{grade[3]}}</p><p v-else>{{grade[4]}}</p><!-- v-show --><p v-show="status">Hello World!</p></div><script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><script>const vm = new Vue({el: '.app',data() {return {msg: 'php中文网',flag: true,tips: "隐藏",point: 4500,grade: ["木头会员","石头会员","金牌会员","终身会员","只对会员开放",],status: true,}}})</script>

<div class="app"><p>数量:<input type="number" v-model="num" style="width:5em" min="0" /></p><p>单价:{{price}} 元</p><!-- <p>金额:{{num * price}} 元</p> --><!-- 计算属性,本质上就是原生的访问器属性 --><p>金额:{{amount}} 元</p></div><script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><script>const vm = new Vue({el: document.querySelector(".app"),data() {return {num: 0,price: 50,res: 0,}},// 计算属性:最终会和data合并,所以不要和data中已有属性重名computed: {// amount() {// return this.num * this.price;// },amount: {get() {return this.num * this.price;},set(value) {console.log(value);if (value > 1000) this.price = 40;},},},});vm.amount = 1001;</script>

<div class="app"><p><input type="number" v-model="num" style="width:5em" min="0" :max="max"></p><p>单价:{{price}} 元</p><p>金额:{{res}} 元</p></div><script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><script>const vm = new Vue({el: document.querySelector(".app"),data() {return {num: 0,price: 50,res: 0,max: 100,};},// 侦听器属性watch: {// 侦听的是某一个属性的值得变化,它的属性名与data中要监听的属性同名num(newValut, oldValue) {this.res = newValut * this.price;// 监听库存if (newValut >= 20) {this.max = newValut;alert('库存不足,请补货');}}}})</script>
计算属性与侦听器之间的区别:
计算属性:最终要和data合并,所以不要和data的属性重名,适合用于数据之间存在依赖计算的场景。
侦听器属性:侦听某一个属性的变化,它的属性名必须和data中的属性同名,适合用于根据监听数据变化来处理的场景。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号