当前位置: 首页 > news >正文

使用UniApp实现下拉框和表格组件页面

使用UniApp实现下拉框和表格组件页面

UniApp提供了一套完整的跨平台开发框架,支持在多个平台上运行。下拉框和表格是常见的UI组件,可以通过UniApp内置组件或第三方插件实现。

下拉框组件的实现

UniApp内置的<picker>组件可以实现下拉选择功能。以下是一个基础的下拉框实现示例:

<template><view><picker mode="selector" :range="options" @change="handlePickerChange"><view>当前选择:{{selectedOption}}</view></picker></view>
</template><script>
export default {data() {return {options: ['选项1', '选项2', '选项3'],selectedOption: '请选择'}},methods: {handlePickerChange(e) {this.selectedOption = this.options[e.detail.value]}}
}
</script>

表格组件的实现

UniApp没有内置表格组件,但可以通过<view><text>组合实现表格效果,或使用第三方组件如uni-table

<template><view><uni-table border><uni-tr><uni-th>姓名</uni-th><uni-th>年龄</uni-th><uni-th>职业</uni-th></uni-tr><uni-tr v-for="(item, index) in tableData" :key="index"><uni-td>{{item.name}}</uni-td><uni-td>{{item.age}}</uni-td><uni-td>{{item.job}}</uni-td></uni-tr></uni-table></view>
</template><script>
export default {data() {return {tableData: [{name: '张三', age: 25, job: '工程师'},{name: '李四', age: 30, job: '设计师'}]}}
}
</script>

下拉框与表格联动

实现下拉框选择后更新表格内容的联动效果:

<template><view><picker mode="selector" :range="filterOptions" @change="filterTable"><view>筛选条件:{{currentFilter}}</view></picker><uni-table border><uni-tr><uni-th>姓名</uni-th><uni-th>部门</uni-th></uni-tr><uni-tr v-for="(item, index) in filteredData" :key="index"><uni-td>{{item.name}}</uni-td><uni-td>{{item.department}}</uni-td></uni-tr></uni-table></view>
</template><script>
export default {data() {return {filterOptions: ['全部', '技术部', '市场部', '人事部'],currentFilter: '全部',allData: [{name: '张三', department: '技术部'},{name: '李四', department: '市场部'},{name: '王五', department: '人事部'}],filteredData: []}},created() {this.filteredData = this.allData},methods: {filterTable(e) {this.currentFilter = this.filterOptions[e.detail.value]if(this.currentFilter === '全部') {this.filteredData = this.allData} else {this.filteredData = this.allData.filter(item => item.department === this.currentFilter)}}}
}
</script>

样式优化

通过CSS可以进一步美化下拉框和表格:

/* 下拉框样式 */
picker {padding: 15px;background-color: #f8f8f8;border-radius: 5px;margin: 10px;
}/* 表格样式 */
uni-table {width: 100%;margin-top: 20px;
}uni-th {background-color: #f0f0f0;padding: 10px;
}uni-td {padding: 8px;text-align: center;
}

注意事项
  1. 使用uni-table需要先安装对应的uni-ui组件
  2. 数据量较大时考虑分页处理
  3. 移动端适配需要注意表格的横向滚动问题
  4. 下拉框在H5和微信小程序中的表现略有不同

通过以上方法可以快速在UniApp中实现包含下拉框和表格的页面,并能实现两者间的数据联动。


文章转载自:

http://eCXbyRk0.gtwtk.cn
http://QEkk9PH1.gtwtk.cn
http://1Iky0V34.gtwtk.cn
http://b6x7ZAd5.gtwtk.cn
http://8E6SiugR.gtwtk.cn
http://yllxVdhq.gtwtk.cn
http://nxlKqqCK.gtwtk.cn
http://Zm5OX07H.gtwtk.cn
http://QeiqwZLX.gtwtk.cn
http://WuVkrBNA.gtwtk.cn
http://VXnVWwaP.gtwtk.cn
http://KO34miUk.gtwtk.cn
http://gAyxCMiU.gtwtk.cn
http://ZrBigTvP.gtwtk.cn
http://V4j35e2M.gtwtk.cn
http://6C5B8GpO.gtwtk.cn
http://lJodKQUO.gtwtk.cn
http://0kNq7Jhz.gtwtk.cn
http://mXB6QwBc.gtwtk.cn
http://o60eNoik.gtwtk.cn
http://ybXQwvdg.gtwtk.cn
http://ai8b7To3.gtwtk.cn
http://HfvyV41u.gtwtk.cn
http://WmQzHJc9.gtwtk.cn
http://odw6lWe7.gtwtk.cn
http://9eG4fTTd.gtwtk.cn
http://gfjWMbBU.gtwtk.cn
http://nd7XQGbf.gtwtk.cn
http://7Jx4qQqa.gtwtk.cn
http://NmvAMiy2.gtwtk.cn
http://www.dtcms.com/a/369797.html

相关文章:

  • 人工智能学习:基于seq2seq模型架构实现翻译
  • Day12--HOT100--23. 合并 K 个升序链表,146. LRU 缓存,94. 二叉树的中序遍历
  • Hive on Tez/Spark 执行引擎对比与优化
  • 03.缓存池
  • 突破反爬限制:动态IP轮换策略与实现
  • stunnel实现TCP双向认证加密
  • C#实现导入CSV数据到List<T>的完整教程
  • 安卓学习 之 按钮点击事件
  • Nmap网络扫描工具详细使用教程
  • 持续集成和持续交付 (CI/CD) 工具——Jenkins
  • 微信小程序携带token跳转h5, h5再返回微信小程序
  • ISO/IEC 27001 第八章 运行
  • 苍穹外卖项目实战(day-5完整版)-记录实战教程及问题的解决方法
  • GO语言的主要语法和特性
  • ubuntu 系統使用過程中黑屏問題分析
  • JavaScript 入门精要:从变量到对象,构建稳固基础
  • Go语言设计模式(三)抽象工厂模式
  • SDRAM-08 数据手册解读
  • [光学原理与应用-436]:晶体光学 - 各向同性与各向异性是描述材料物理性质随方向变化特性
  • python:如何生成 TA-Lib .whl 安装包?
  • AD渗透中服务账号相关攻击手法总结(Kerberoasting、委派)
  • 从Java全栈到Vue3实战:一次真实面试中的技术探索
  • python graphviz中文测试
  • 【VoNR】VoNR 不等于 VoLTE on 5G
  • 基于 GEE 批量下载 Landsat8 地表温度(LST)数据
  • 从“下山”到AI引擎:全面理解梯度下降(下)
  • Linux应用(2)——标准/目录IO
  • 问题三ai思路
  • 玳瑁的嵌入式日记D33-0905(IO多路复用)
  • GigaDevice(兆易创新)GD25Q64CSJGR 64Mbit FLASH