我们在上一页的购物清单中添加了一个复选框,以标记某件商品是否重要。
在复选框旁边,我们添加一个始终反映当前"important"(重要)状态的文本,并在"true"或"false"之间动态变化。
我们使用 v-model 添加此动态复选框和文本以改善用户交互。
我们需要:
下面是"important"(重要)功能的外观,与购物清单分开。
复选框文本是动态的,以便文本反映当前复选框输入值。
<div id="app"> <form> <p> Important item? <label> <input type="checkbox" v-model="important"> {{ important }} </label> </p> </form> </div> <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script> <script> const app = Vue.createApp({ data() { return { important: false } } }) app.mount('#app') </script> »让我们在购物清单示例中包含此动态功能。
让我们添加功能,以便将添加到购物清单中的商品标记为已找到。
我们需要:
我们创建一个列表,其中包含我们需要查找的所有项目,并在下面创建一个列表,其中已找到的项目被划掉。 实际上,我们可以将所有项目放在第一个列表中,将所有项目放在第二个列表中,只需使用 v-show 和 Vue 数据属性 'found' 来定义是在第一个列表中还是在第二个列表中显示项目。
将商品添加到购物清单后,我们可以假装去购物,找到商品后将其单击即可。 如果我们错误地单击了某个项目,我们可以通过再次单击该项目将其带回 'not found'(未找到)列表。
<div id="app"> <form v-on:submit.prevent="addItem"> <p>Add item</p> <p>Item name: <input type="text" required v-model="itemName"></p> <p>How many: <input type="number" v-model="itemNumber"></p> <p> Important? <label> <input type="checkbox" v-model="itemImportant"> {{ important }} </label> </p> <button type="submit">Add item</button> </form> <p><strong>Shopping list:</strong></p> <ul id="ulToFind"> <li v-for="item in shoppingList" v-bind:class="{ impClass: item.important }" v-on:click="item.found=!item.found" v-show="!item.found"> {{ item.name }}, {{ item.number}} </li> </ul> <ul id="ulFound"> <li v-for="item in shoppingList" v-bind:class="{ impClass: item.important }" v-on:click="item.found=!item.found" v-show="item.found"> {{ item.name }}, {{ item.number}} </li> </ul> </div> <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script> <script> const app = Vue.createApp({ data() { return { itemName: null, itemNumber: null, important: false, shoppingList: [ { name: 'Tomatoes', number: 5, important: false, found: false } ] } }, methods: { addItem() { let item = { name: this.itemName, number: this.itemNumber, important: this.itemImportant, found: false } this.shoppingList.push(item) this.itemName = null this.itemNumber = null this.itemImportant = false } } }) app.mount('#app') </script> »我们可以制作一个表格,供客户从菜单中订购。 为了方便顾客,我们只在顾客选择点饮料后才呈现可供选择的饮料。 可以说,这比一次向顾客展示菜单中的所有菜品更好。 在此示例中,我们使用 v-model 和 v-show 使表单本身动态化。
我们需要:
此表单是动态的。 它根据用户的选择而变化。 用户必须首先选择类别,然后选择产品和数量,然后订单按钮变得可见并且用户可以订购。
»相关
视频
RELATED VIDEOS
科技资讯
1
2
3
4
5
6
7
8
9
精选课程
共5课时
17.3万人学习
共49课时
77.4万人学习
共29课时
62万人学习
共25课时
39.5万人学习
共43课时
71.2万人学习
共25课时
61.9万人学习
共22课时
23.1万人学习
共28课时
34.1万人学习
共89课时
125.7万人学习