uni-app之表单组件教程玩转交互式表单

news/2024/11/29 23:40:14/

在UniApp中,表单组件是构建用户交互的重要元素。本教程将详细介绍UniApp中的各种表单子组件,包括(button、checkbox、editor、form、input、label、picker、picker-view、radio、slider、switch和textarea),并提供详细的示例代码。


1. button 按钮

按钮是常用的表单子组件之一,用于触发某些操作或提交表单。

示例代码:

<template><view><button @click="handleClick">点击我</button></view>
</template><script>
export default {methods: {handleClick() {uni.showToast({title: '按钮被点击',icon: 'none'});}}
}
</script>

2. checkbox 复选框

复选框允许用户从一组选项中选择多个选项。

示例代码:

<template><view><checkbox-group v-model="selectedFruits"><checkbox value="apple">苹果</checkbox><checkbox value="banana">香蕉</checkbox><checkbox value="orange">橙子</checkbox></checkbox-group></view>
</template><script>
export default {data() {return {selectedFruits: []};}
}
</script>

3. editor 富文本编辑器

富文本编辑器允许用户输入格式丰富的文本内容。

示例代码:

<template><view><editor v-model="content" placeholder="请输入内容"></editor></view>
</template><script>
export default {data() {return {content: ''};}
}
</script>

4. form 表单

表单是一种包含各种表单子组件的容器,用于收集用户输入的数据。

示例代码:

<template><view><form @submit="handleSubmit"><input type="text" v-model="username" placeholder="用户名" /><input type="password" v-model="password" placeholder="密码" /><button type="submit">提交</button></form></view>
</template><script>
export default {data() {return {username: '',password: ''};},methods: {handleSubmit(event) {event.preventDefault();// 处理表单提交逻辑}}
}
</script>

5. input 输入框

输入框允许用户输入文本或其他类型的数据。

示例代码:

<template><view><input type="text" v-model="message" placeholder="请输入消息" /></view>
</template><script>
export default {data() {return {message: ''};}
}
</script>

6. label 标签

标签用于为相关的表单元素提供标识或描述。

示例代码:

<template><view><label for="username">用户名:</label><input id="username" type="text" v-model="username" /></view>
</template><script>
export default {data() {return {username: ''};}
}
</script>

7. picker 选择器

选择器用于从预定义的选项中选择一个或多个值。

示例代码:

<template><view><picker :value="selectedCity" @change="handleChange"><view class="picker">{{ selectedCity }}</view><picker-view-column><view v-for="city in cities" :key="city">{{ city }}</view></picker-view-column></picker></view>
</template><script>
export default {data() {return {cities: ['北京', '上海', '广州', '深圳'],selectedCity: ''};},methods: {handleChange(event) {this.selectedCity = this.cities[event.detail.value];}}
}
</script>

8. picker-view 滚动选择器

滚动选择器用于从预定义的选项中滚动选择一个或多个值。

示例代码:

<template><view><picker-view :value="selectedTime" @change="handleChange"><picker-view-column><view v-for="hour in hours" :key="hour">{{ hour }}</view></picker-view-column><picker-view-column><view v-for="minute in minutes" :key="minute">{{ minute }}</view></picker-view-column></picker-view></view>
</template><script>
export default {data() {return {hours: ['00', '01', '02', '03', ...],minutes: ['00', '15', '30', '45'],selectedTime: [0, 0] // 默认选中第一个小时和第一个分钟};},methods: {handleChange(event) {const [hourIndex, minuteIndex] = event.detail.value;this.selectedTime = [this.hours[hourIndex], this.minutes[minuteIndex]];}}
}
</script>

9. radio 单选框

单选框允许用户从一组选项中选择一个选项。

示例代码:

<template><view><radio-group v-model="selectedGender"><radio value="male"></radio><radio value="female"></radio></radio-group></view>
</template><script>
export default {data() {return {selectedGender: ''};}
}
</script>

10. slider 滑动选择器

滑动选择器允许用户通过滑动选择一个范围内的值。

示例代码:

<template><view><slider v-model="selectedValue" min="0" max="100"></slider><text>{{ selectedValue }}</text></view>
</template><script>
export default {data() {return {selectedValue: 0};}
}
</script>

11. switch 开关

开关用于切换一个选项的状态,可以表示开或关。

示例代码:

<template><view><switch v-model="isToggle"></switch><text>{{ isToggle ? '开启' : '关闭' }}</text></view>
</template><script>
export default {data() {return {isToggle: false};}
}
</script>

12. textarea 多行文本框

多行文本框允许用户输入多行文本内容。

示例代码:

<template><view><textarea v-model="content" placeholder="请输入内容"></textarea></view>
</template><script>
export default {data() {return {content: ''};}
}
</script>

恭喜!你已经学习了UniApp中的各种表单子组件,包括(button、checkbox、editor、form、input、label、picker、picker-view、radio、slider、switch和textarea)。通过这些组件,你可以构建交互式的表单和收集用户输入的数据。尝试运行示例代码,并根据自己的需求进行定制和扩展。祝你在UniApp开发中取得成功!


http://www.ppmy.cn/news/500581.html

相关文章

Java反射应用(面试题反射的几种应用)

反射应用一&#xff1a;创建运行时类的对象 1.代码举例 Class<Person> clazz Person.class;Person obj clazz.newInstance(); System.out.println(obj);2.说明 newInstance():调用此方法&#xff0c;创建对应的运行时类的对象。内部调用了运行时类的空参的构造器。要想…

【用户增长】找到用户增长的根本动因

找到用户增长的根本动因 1.没有痛点的用户增长是不持久的 近几年创业的人越来越多&#xff0c;在这些创业失败的案例中&#xff0c;不乏一些 UI 设计非常漂亮的产品&#xff0c;但最终却因为用户增长做不起来而导致创业失败。这些产品失败的最主要原因就是没有找对痛点。 没有…

Android之增量更新详解

前言&#xff1a;自从 Android 4.1 开始&#xff0c; Google Play 引入了应用程序的增量更新功能&#xff0c;App使用该升级方式&#xff0c;可节省约2/3的流量。现在国内主流的应用市场也都支持应用的增量更新了&#xff0c;最常见的应用宝省流量更新。 什么是增量更新&#x…

角雷达“突破”天线设计瓶颈,巨大增量市场机会爆发

毫米波雷达正在受益整车搭载数量提升的利好&#xff0c;其中&#xff0c;和前向雷达&#xff08;市场份额集中于少数几家&#xff09;不同&#xff0c;角雷达市场份额集中度相对较低&#xff0c;量产供应商数量也更多。 近年来角雷达&#xff08;盲区预警及变道辅助&#xff0…

全民营销时代,让私域流量变成业务增量需要几步?

本篇文章暨 CSDN《中国 101 计划》系列数字化转型场景之一。 《中国 101 计划——探索企业数字化发展新生态》为 CSDN 联合《新程序员》、GitCode.net 开源代码仓共同策划推出的系列活动&#xff0c;寻访一百零一个数字化转型场景&#xff0c;聚合呈现并开通评选通道&#xff0…

增量型博客

增量型博客-- 一种全新的博客模式 随着牛人越来越多&#xff0c;我们看到网上的技术博客也是与日俱增。但是大部分的博客都是一种模式&#xff0c;write one&#xff0c;run everywhere&#xff01; ( java说&#xff0c;谁在夸我&#xff1f;:-). 也就是说&#xff0c;一旦博…

数据同步之全量同步与增量同步

一、什么是数据同步 业务数据是数据仓库的重要数据来源&#xff0c;我们需要每日定时从业务数据库中抽取数据&#xff0c;传输到数据仓库中&#xff0c;之后再对数据进行分析统计。 为保证统计结果的正确性&#xff0c;需要保证数据仓库中的数据与业务数据库是同步的&#xff0…

增量模型优缺点

1、增量模型的优点&#xff1a; 整个项目的资金不会被提前消耗&#xff0c;因为首先开发和交付了主要功能和高风险功能。每个增量交付一个可操作的产品。每次增量交付过程中获取的经验&#xff0c;有利于后面的改进&#xff0c;客户也有机会对建立好的模型作出反应。采用连续增…