Home >Web Front-end >uni-app >How to implement tag selection function in uniapp
How to implement the tag selection function in uniapp
In application development, the tag selection function is a common requirement. By providing the user with a set of tags, the user can select one or more of the tags to perform classification or filtering operations. This article will introduce how to implement the tag selection function in uniapp and provide code examples for reference.
1. Create a tag list
First, you need to create a tag list on the page to display selectable tags. You can use the uni-card component and uni-icons in the uniui component library to beautify the display effect of labels.
<template> <view class="tag-list"> <uni-card v-for="(tag, index) in tagList" :key="index" @click="selectTag(tag)"> <view class="tag-item">{{tag}}</view> </uni-card> </view> </template>
2. Set tag selection status
In order to implement the tag selection function, you need to define an array of selected tags selectedTags in the data of the page to store the tags selected by the user. At the same time, it determines whether the tag is selected in the tag list, and switches the style of the selected state.
<template> <view class="tag-list"> <uni-card v-for="(tag, index) in tagList" :key="index" @click="selectTag(tag)"> <view class="tag-item" :class="{ 'tag-selected': isSelected(tag) }">{{tag}}</view> </uni-card> </view> </template> <script> export default { data() { return { tagList: ['标签1', '标签2', '标签3', '标签4', '标签5'], selectedTags: [] } }, methods: { selectTag(tag) { const index = this.selectedTags.indexOf(tag) if (index > -1) { this.selectedTags.splice(index, 1) } else { this.selectedTags.push(tag) } }, isSelected(tag) { return this.selectedTags.indexOf(tag) > -1 } } } </script> <style> .tag-item { padding: 10rpx; margin: 5rpx; border-radius: 20rpx; background-color: #eee; text-align: center; font-size: 28rpx; color: #333; } .tag-selected { background-color: #f60; color: #fff; } </style>
3. Apply and get the selected tag
Display the selected tag on the page, and you can pass the selected tag to the next page or perform other operations through the event mechanism of uniapp.
<template> <view> <view class="selected-tags"> <view v-for="(tag, index) in selectedTags" :key="index" class="selected-tag">{{tag}}</view> </view> <view class="tag-list"> <uni-card v-for="(tag, index) in tagList" :key="index" @click="selectTag(tag)"> <view class="tag-item" :class="{ 'tag-selected': isSelected(tag) }">{{tag}}</view> </uni-card> </view> </view> </template> <script> export default { data() { return { tagList: ['标签1', '标签2', '标签3', '标签4', '标签5'], selectedTags: [] } }, methods: { selectTag(tag) { const index = this.selectedTags.indexOf(tag) if (index > -1) { this.selectedTags.splice(index, 1) } else { this.selectedTags.push(tag) } }, isSelected(tag) { return this.selectedTags.indexOf(tag) > -1 } } } </script> <style> .selected-tags { display: flex; flex-wrap: wrap; margin-bottom: 20rpx; padding: 10rpx; } .selected-tag { padding: 10rpx; margin: 5rpx; border: 1px solid #666; border-radius: 20rpx; background-color: #eee; text-align: center; font-size: 28rpx; color: #333; } .tag-item { padding: 10rpx; margin: 5rpx; border-radius: 20rpx; background-color: #eee; text-align: center; font-size: 28rpx; color: #333; } .tag-selected { background-color: #f60; color: #fff; } </style>
The above are the steps and code examples to implement the tag selection function in uniapp. Through the above implementation, users can select tags according to their own needs, and at the same time, they can apply the selected tags to perform other operations, such as data filtering, etc. Developers can further customize styles and functions according to their own needs. I hope this article will help you implement the tag selection function in uniapp.
The above is the detailed content of How to implement tag selection function in uniapp. For more information, please follow other related articles on the PHP Chinese website!