微信小程序案例 4.1 form 组件

发布时间:2026/9/30 12:01:11
微信小程序案例 4.1 form 组件 一、案例简介本案例是微信小程序组件开发案例主要学习 form 组件、input 组件、button 组件以及消息提示框 wx.showToast 的使用。程序运行后用户在三个输入框中输入三角形的三条边长点击 计算 按钮利用海伦公式计算并显示三角形的面积如果输入不满足三角形构成条件会弹出提示框并清空输入。 本次作业在基础案例上新增了一个 重置 按钮点击后三个输入框的数值被清空同时隐藏计算出的面积。二、学习知识点form 组件用于包裹表单将组件内的 input、switch、checkbox 等输入内容统一收集提交。input 组件输入框通过 name 属性作为提交时数据的 keytypedigit 弹出带小数点的数字键盘focustrue 自动获得焦点。button 组件通过 form-typesubmit 提交表单form-typereset 重置表单。bindsubmit表单提交事件通过 e.detail.value 按 name 获取各输入框的值。bindreset表单重置事件重置时触发可用来清空显示结果。wx.showToast轻提示 API用于给用户弹出提示信息。海伦公式已知三角形三边 a、b、c先求半周长 p(abc)/2面积 s√[p (p-a)(p-b)(p-c)]。三、开发步骤新建不使用云服务、不使用模板的小程序项目。在 index.wxml 中编写 form 组件内含三个 input 输入框name 分别为 a、b、c一个 计算 提交按钮和一个 重置 按钮。在 index.js 中编写 formSubmit 函数获取三边长度先做合法性校验再用海伦公式计算面积。输入非法时调用 wx.showToast 弹出提示并隐藏面积显示。新增 formReset 函数点击重置按钮时清空面积显示配合 form-typereset 自动清空输入框。编写样式编译预览测试。四、核心代码index.wxml form bindsubmitformSubmit bindresetformResetinput namea typedigit focustrue placeholder请输入边长 a /input nameb typedigit placeholder请输入边长 b /input namec typedigit placeholder请输入边长 c /button form-typesubmit计算/buttonbutton form-typereset重置/button/form view wx:if{{visible}}三角形的面积为{{area}}/viewindex.js Page ({ data: { visible: false, area: }, formSubmit (e) { let a parseFloat (e.detail.value.a) let b parseFloat (e.detail.value.b) let c parseFloat (e.detail.value.c) if (isNaN (a) || isNaN (b) || isNaN (c)) { wx.showToast ({ title: 请输入有效边长 , icon: none }) this.setData ({ visible: false }) return } if (a b c || a c b || b c a) { wx.showToast ({ title: 不满足三角形条件 , icon: none }) this.setData ({ visible: false }) return } let p (a b c) / 2 let s Math.sqrt (p * (p - a) * (p - b) * (p - c)) this.setData ({ visible: true, area: s.toFixed (2) }) }, formReset () { this.setData ({ visible: false, area: }) } })五、遇到的问题与解决方案问题 1取不到输入框的值。 原因input 没有加 name 属性表单提交时无法作为 key 对应取值。 解决给三个 input 分别加上 namea、b、c。问题 2输入不合法时面积还残留在页面上。 原因只弹了提示没有隐藏面积区域。 解决在不合法分支里 setData 把 visible 设为 false用 wx:if 控制面积隐藏。问题 3重置按钮点了之后面积还在。 原因form-typereset 只能清空输入框不会自动隐藏面积。 解决在 form 上绑定 bindreset 事件在 formReset 函数里把 visible 和 area 清空。六、运行效果打开页面光标自动落在第一个输入框输入三边长点击 计算合法时显示三角形面积非法时弹出提示点击 重置 按钮三个输入框清空面积隐藏。七、案例总结通过本案例掌握了小程序 form 表单的提交与重置机制理解了 input 的 name 属性和 e.detail.value 取值原理学会用 wx.showToast 做用户提示并用海伦公式完成了实际的计算小功能。新增的重置按钮加深了对 form-typereset 和 bindreset 事件的理解。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询