微信小程序 Form 组件实战:三角形面积计算器

【Flutter 问题系列第 16 篇】如何防止软键盘弹出后顶掉内容 Flutter 如何防止软键盘弹出后顶掉内容 阅读详情

一、项目介绍

使用微信小程序form表单组件,实现三角形面积计算器。
功能需求:

  1. 三个输入框,用来输入三角形三条边长;
  2. 【计算】按钮:利用海伦公式,计算三角形面积,同时校验三边是否满足三角形构成条件;
  3. 【重置】按钮:点击一键清空全部输入框内容,清空计算结果。
    页面效果:所有内容包裹在一个外边框容器内,标题红色,计算按钮绿色,重置按钮文字红色。

核心知识点:小程序 form 组件 form-type,submit提交事件、reset重置事件。

二、项目文件结构

pages
└── index
    ├── index.wxml   页面结构
    ├── index.js     业务逻辑
    ├── index.wxss   页面样式
    └── index.json   页面配置

三、完整代码

1. index.wxml(页面结构)

<view class="container">
  <!-- 外层边框容器 -->
  <view class="box">
    <view class="title">三角形面积计算器</view>
    <!-- form表单,绑定submit提交事件 -->
    <form bindsubmit="calcArea">
      <input name="a" placeholder="请输入三角形第一条边长" value="{{a}}"></input>
      <input name="b" placeholder="请输入三角形第二条边长" value="{{b}}"></input>
      <input name="c" placeholder="请输入三角形第三条边长" value="{{c}}"></input>

      <!-- form-type="submit" 触发表单提交 -->
      <button form-type="submit" type="primary">计算</button>
      <!-- form-type="reset" 触发表单重置,自动清空输入框 -->
      <button form-type="reset" bindreset="onReset">重置</button>
    </form>
    <!-- 展示计算结果 -->
    <view wx:if="{{result}}">结果:{{result}}</view>
  </view>
</view>

2. index.js(逻辑代码)

Page({
  data: {
    a: '',
    b: '',
    c: '',
    result: ''
  },
  // 表单提交,计算三角形面积(海伦公式)
  calcArea(e) {
    // 获取表单提交的三个边长
    let {a,b,c} = e.detail.value;
    a = parseFloat(a);
    b = parseFloat(b);
    c = parseFloat(c);
    // 判断是否可以构成三角形:两边之和大于第三边,边长大于0
    if(a+b>c && a+c>b && b+c>a && a>0 && b>0 && c>0){
      let p = (a+b+c)/2;
      let s = Math.sqrt(p*(p-a)*(p-b)*(p-c));
      this.setData({result: `面积 = ${s.toFixed(2)}`})
    }else{
      this.setData({result: "输入的三边不能构成三角形"})
    }
  },
  // 重置按钮回调,清空结果
  onReset(){
    this.setData({
      result:''
    })
  }
})

3. index.wxss(样式,包含外边框)

.container{
  padding:30rpx;
}
/* 外层外框,实现截图的外围边框 */
.box{
  border: 1rpx solid #999;
  padding: 40rpx;
  border-radius: 8rpx;
}
.title{
  color:red;
  font-size:34rpx;
  text-align:center;
  margin-bottom:40rpx;
}
input{
  border-bottom:1rpx solid #777;
  margin:20rpx 0;
  padding:10rpx;
}
button[type="primary"]{
  background-color:#09bb07;
  margin-top:30rpx;
}
button:not([type="primary"]){
  color:red;
}

4. index.json(页面配置)

{
  "navigationBarTitleText":"form组件"
}

四、核心知识点讲解

  1. form 组件<form> 用来包裹表单控件,通过bindsubmit监听表单提交事件。
    按钮设置form-type="submit":点击触发表单提交,把表单内name属性对应的值打包传给 js。
    按钮设置form-type="reset":原生自带能力,一键清空所有输入框的值,正好满足作业需求。
  2. 海伦公式计算面积
    假设三角形三边 a,b,c,半周长 (p=(a+b+c)/2)
    面积 (S=\sqrt{p(p-a)(p-b)(p-c)})
  3. 边界判断
    需要判断两边之和大于第三边,边长必须大于 0,否则无法构成三角形,给出提示。

五、运行步骤

  1. 打开微信开发者工具,打开项目;
  2. 打开pages/index目录,把 4 段代码分别粘贴到对应文件;
  3. 全部保存,点击【编译】;
  4. 在模拟器输入三边数字,点击【计算】得到面积;点击【重置】,输入框清空。

六、效果说明

  • 页面所有内容被一个边框包裹,和作业截图一致;
  • 标题红色居中;
  • 输入框带下划线;
  • 计算按钮绿色,重置按钮红字;
  • 重置后输入框全部清空,结果消失。
Allegro172版本多人协同在线设计操作指导 首先用户需要在同一个局域网下,并且Allegro172的版本必须一致,比如都是S082的版本。另外一个用户同样打开相同版本的172,选择Symphony Team design。Allegro升级到172版本,可以支持多人协同设计,并且实时同步,具体操作如下。协同模式下,不能直接保存文件,需要另存版本,注意时常保存文件,以免丢失数据。第一个用户打开PCB,选择Symphony Team design。等待一会出现如下窗口,表示已经共享成功了,并且记下IP地址。出现一个窗口,输出开共享用户的IP地址。 阅读详情

相关推荐

Redis 可视化工具 RedisInsight 的保姆级安装以及使用(最新)

Redis 可视化工具 RedisInsight 的保姆级安装以及使用(最新)

一名全栈小白的博客 1万+

微信小程序实战:基于 form 组件的三角形面积计算器

通过这个案例,我们完整地实践了微信小程序中form组件的使用方式,包括:表单数据的绑定与获取input组件的name属性和type属性button组件的提交方式海伦公式的 JavaScript 实现消息提示 API 的使用数据绑定驱动视图更新这个案例虽然小巧,但涵盖了小程序表单交互的核心流程,非常适合作为学习小程序的第一个实战项目。掌握之后,你可以轻松扩展到更复杂的表单场景,比如用户注册、订单提交等。

2401_87885101的博客 73

DeepLearning tutorial(7)深度学习框架Keras的使用-进阶

上一篇文章总结了Keras的基本使用方法,相信用过的同学都会觉得不可思议,太简洁了。十多天前,我在github上发现这个框架的时候,关注Keras的人还比较少,这两天无论是github还是微薄,都看到越来越多的人关注和使用Keras。所以这篇文章就简单地再介绍一下Keras的使用,方便各位入门。主要包括以下三个内容: 训练CNN并保存训练好的模型。 将CNN用于特征提取,用提取出来的特征训练SVM。

wepon的专栏 2万+

微信小程序 form 表单组件实战——三角形面积计算器

本次案例完整练习了小程序 form 表单的提交、重置、数据获取、前端校验和数学运算。我掌握了表单组件的核心工作机制,理解了 submit 与 reset 的官方使用规范,学会了前端输入合法性判断与简单算法实现。通过本次实践,我深刻体会到小程序组件自带属性的便捷性,合理使用原生属性可以大幅简化代码、提升程序稳定性,为后续复杂表单开发打下基础。

2601_96878943的博客 126

Java实战:用Proj4j搞定WGS84与CGCS2000坐标互转(附完整代码)

本文详细介绍了如何使用Java库Proj4j实现WGS84与CGCS2000坐标系之间的高精度转换。通过七参数转换模型和格网改正量文件,提供完整的代码实现和项目配置指南,帮助开发者快速集成到地理信息系统项目中,提升坐标转换效率和精度。

weixin_29251567的博客 828

用MFRC522+STM32打造智能门禁:从硬件选型到云端控制全流程

本文详细介绍了基于STM32微控制器和MFRC522射频模块构建智能门禁系统的完整流程。从硬件选型、电路设计、底层驱动开发,到系统软件架构与状态机设计,并最终实现通过ESP8266模块接入云端平台(如OneNET)进行远程控制和数据可视化。项目深入探讨了MFRC522的SPI通信、卡片操作流程、天线调试以及云端MQTT集成等关键技术,为嵌入式开发者提供了一个从本地感知到云端管控的物联网项目实战参考。

raspberrypi5的博客 741

微信小程序 form 组件实战:三角形面积计算器

最近学习微信小程序 form 表单组件,做了一个三角形面积计算器小案例。利用form收集表单输入、input接收边长,使用海伦公式计算三角形面积;同时做合法性校验:不满足三角形三边关系时弹出 toast 提示并清空;作业额外增加重置按钮,一键清空输入框与计算结果。form 组件bindsubmit表单提交事件,name属性获取表单值input数字键盘、focus自动获取焦点button提交表单,普通按钮绑定点击事件消息提示 API小程序setData更新页面数据海伦公式计算三角形面积。

djxzyr的博客 181

给IC设计新人的Tessent Scan入门指南:从RTL到ATPG的完整DFT流程解析

本文为IC设计新手提供Tessent Scan的完整DFT流程指南,从RTL代码检查到ATPG测试向量生成,详细解析扫描链配置、插入及验证的关键步骤。通过实战案例和工具命令示例,帮助工程师快速掌握Tessent工具链的应用技巧,提升芯片可测试性设计的效率和质量。

weixin_32541663的博客 451

微信小程序 form 组件实战|三角形面积计算器

完成课后作业新增重置按钮,完整可运行源码。点击`form‑type="submit"`按钮,form 组件收集内部所有带`name`属性组件的值,通过`bindsubmit`触发事件,数据放在`e.detail.value`对象。<input type="digit" placeholder="请输入三角形第一条边长" name="a" focus="true" value="{{sideA}}"/>> 文章标签:`微信小程序` `form组件` `input` `button` `海伦公式`

zcmdcsdn_的博客 139

光学材料仿真软件:FDTD Solutions_(4).材料属性的定义与应用

在光学材料仿真软件中,材料属性的定义和应用是至关重要的一步。正确地定义材料属性可以确保仿真结果的准确性和可靠性。本节将详细介绍如何在FDTD Solutions中定义和应用不同的材料属性,包括介质材料、金属材料、色散材料等,并提供具体的代码示例和数据样例。介质材料是光学仿真中最常见的材料类型之一。在FDTD Solutions中,可以通过多种方式定义介质材料,包括使用预定义的材料库、自定义材料参数或导入材料数据文件。FDTD Solutions内置了一个丰富的材料库,包含了许多常用材料的光学性质。

kkchenjj的博客 1401

HFSS实战项目——GPS北斗双模微带天线

本文设计了一款方形圆极化微带天线应用于北斗B1和GPSL1频段,满足高增益、低VSWR、适当方向图等要求。设计中心频率为1568MHz,介质板采用厚度h=1.6mm的Arlon AD450(tm)板,相对介电常数为4.5,采用探针馈电。

2401_87464239的博客 1768

微信小程序form组件实战——三角形面积计算器

form 收集用户输入 → name 作为 key → bindsubmit 统一取值 → parseFloat 类型转换 → 业务规则校验 → wx.showToast 用户反馈 → setData 驱动视图更新。formname属性 = 一次拿到所有表单数据(表单取值永远是字符串,参与运算前必须parseFloat转数值输入校验是安全合规的要求:先校验(三角形法则、area > 0)再计算的适合显示较长的纯文字提示input 绑定valuesetData。

xueruanjiande11的博客 104

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

微信小程序 form 表单组件实战:三角形面积计算器

通过这个小计算器案例,我学会了小程序表单的处理流程。小程序表单不会自动提交,只是收集页面输入,所有业务逻辑全部交给 JS 处理。写表单的时候,name 属性千万不能漏掉,这是获取输入值的关键。从输入框拿到的内容都是字符串,涉及计算、对比一定要转为数字类型。在做功能开发,不能假设用户输入的数据一定是合法有效的,前端校验必不可少,提前拦截不符合业务规则的数据。本次作业实现重置功能,封装公共清空函数,计算、重置、错误场景都可以复用同一个方法,减少重复代码。

2601_96878912的博客 217

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

微信小程序学习:form 表单组件实战 —— 三角形面积计算器

form 表单组件是小程序中用于收集用户输入的核心组件,经常搭配 input 输入框、button 按钮一起使用。本次案例利用 form 组件收集三角形的三条边长,通过海伦公式完成三角形面积计算。同时完成作业扩展,增加重置按钮,实现一键清空输入内容。本实验练习表单提交、数据获取、数据校验、消息提示 API 以及条件渲染等知识点。本程序是三角形面积计算器。页面包含三个数字输入框,用于输入三角形三条边;有计算和重置两个按钮。页面打开,第一个输入框自动获得焦点,真机环境弹出数字输入键盘,方便输入数字。

zjkzsk的博客 175

微信小程序 form 表单组件实战 —— 三角形面积计算器

`form`是小程序最常用表单容器组件,可以批量收集内部`input`输入框、单选、复选框的数据。本案例通过**三角形面积计算器**,练习表单提交、数据获取、表单校验、`wx.showToast`消息提示,课后拓展实现重置按钮,加深事件绑定与`setData`数据驱动视图的理解。

2401_87969726的博客 221

微信小程序 form 组件实战 —— 海伦公式三角形面积计算器

本案例使用小程序form表单组件、input输入框、button按钮、消息提示 API,实现三角形面积计算器。用户输入三角形三条边长;使用海伦公式计算三角形面积:\(s=\frac{a+b+c}{2},area=\sqrt{s(s-a)(s-b)(s-c)}\)做合法性校验:任意两边之和必须大于第三边;不合法弹出提示,清空输入框;作业扩展:新增重置按钮,一键清空输入框、隐藏计算结果。formbindsubmit绑定表单提交事件,表单内 input 必须写name属性,提交后在拿到表单数据。

Ct010的博客 86

微信小程序实战:基于 form 组件实现三角形面积计算器(含重置功能)

最近在学习微信小程序的组件开发,正好遇到一个非常经典的案例:利用 form 组件、input 组件和 button 组件,结合海伦公式,实现一个三角形面积计算器。为了实现重置后输入框清空,以及计算失败时清空输入框,必须将 input 的 value 属性绑定到 data中的变量,并在需要清空时通过 this.setData() 将其设为空字符串。input 组件的 type="digit" 属性在真机上会弹出带小数点的数字键盘,非常适合输入边长,但在开发者工具中可能不生效,需要真机预览才能看到效果。

zy2178518261的博客 173

微信小程序|form组件实战:三角形面积计算器(含重置按钮作业)

form 通过 bindsubmit 绑定提交事件:当内部 form-type=“submit” 按钮被点击时触发提交;表单数据放在 e.detail.value 中,key 对应 input 的 name 属性。//打印事件对象,调试查看表单数据。计算按钮:form-type="submit"触发表单提交。=========作业新增重置按钮=========非法 30、40、80 toast 报错,输入清空。// 绑定输入框value,用于清空重置。// form表单提交事件。//清空输入框、隐藏结果。

2603_96926424的博客 75

《微信小程序 form 组件实战——案例4.1 三角形面积计算器(含重置功能)》

form组件配合name属性和bindsubmit可以方便地收集表单数据。input的在真机上体验更好。是常用的轻量级提示 API。重置功能通过bindresetsetData清空数据实现。数据校验是安全合规的重要环节,必须在计算前进行。

2401_88277689的博客 179

微信小程序|form 表单实战,三角形面积计算器(带重置按钮作业)

input type="digit" placeholder="请输入三角形第一条边长" name="a" focus="true" value="{{sideA}}" /><input type="digit" placeholder="请输入三角形第二条边长" name="b" value="{{sideB}}" /><input type="digit" placeholder="请输入三角形第三条边长" name="c" value="{{sideC}}" />--作业新增重置按钮-->

js1020473379的博客 229

form组件

在微信小程序开发中,表单是页面与用户交互最核心的入口之一。如果直接把输入框、按钮散落在页面上,容易出现取值混乱、数据无法统一收集、校验逻辑无处安放、点击按钮触发了错误事件等问题。小程序内置的 form 组件提供了统一的数据收集容器,能够在一次提交中集中获取所有表单控件的值,并支持重置操作,有效解决表单数据分散、提交逻辑杂乱的问题。本文通过完整案例,实现一个三角形面积计算器,完整讲解 form 组件的定义、核心属性、使用方法及事件传参规则。

2502_92100925的博客 163

# 微信小程序|案例4.1 form组件——三角形面积计算器(带重置按钮)

本案例掌握小程序form表单组件基础(s=(a+b+c)/2,area=\sqrt{s(s-a)(s-b)(s-c)})理解表单提交、重置机制(s=(a+b+c)/2,area=\sqrt{s(s-a)(s-b)(s-c)})学会表单数据获取、数值类型转换、简单数学运算与弹窗提示。

tian0871的博客 216

微信小程序 form 表单实战:实现三角形面积计算器

本文通过实现一个三角形面积计算器,系统讲解微信小程序中form表单组件的使用。重点演示了表单数据获取(需设置name属性)、输入值类型转换、海伦公式计算、合法性校验及wx.showToast提示弹窗。结合setData更新视图、wx:if条件渲染与重置功能,完整覆盖表单开发核心流程,帮助开发者掌握数据收集、校验与交互反馈等基础能力。

Clease的博客 312

微信小程序 form 组件案例实践——三角形面积计算器

表单提交依靠form的submit事件收集数据,而页面上的重置功能,不能直接依赖表单原生重置,需要自己编写清空函数,利用小程序的数据驱动视图的特性完成。input输入框绑定页面js中的data数据,当js中的数据发生修改时,页面输入框的内容会同步更新。1. 新建小程序项目,创建页面wxml、wxss、js、json配套文件,编写页面布局和样式,搭建表单页面,放置3个数字输入框、计算按钮、新增的重置按钮。小程序是数据驱动页面,修改js里data的数据,页面UI会自动更新,这是本次案例最重要的收获。

k3375182862的博客 196
上一篇: 微信小程序 模板 template 作业实战博客
下一篇: 微信小程序 checkbox 和 radio 组件学习
luner_aa
博客等级 码龄72天 0粉丝 28原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值