微信小程序案例3-1 比较数字

这篇具有很好参考价值的文章主要介绍了微信小程序案例3-1 比较数字。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、运行效果

  • 单击比较按钮,显示比较结果
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

二、知识储备

(一)Page()函数

微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

(二)数据绑定

微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

(三)事件绑定

微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

(四)事件对象

微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

(五)this关键字

微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

(六)setData()方法

微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

(七)条件渲染

微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

(八)<block>标签

微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

(九)hidden属性

微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

(十)查看项目源码

  • app.json
{
  "pages": [
    "pages/index/index"
  ],
  "window": {
    "navigationBarTextStyle": "black",
    "navigationBarTitleText": "微信小程序",
    "navigationBarBackgroundColor": "#eee",
    "enablePullDownRefresh": true
  },
  "style": "v2",  
  "sitemapLocation": "sitemap.json"   
}  
  • pages/index/index.wxml
<!--index.wxml-->
<view class="student">
    <view class="item">学号:{{id}}</view>
    <view class="item">姓名:{{name}}</view>
    <view class="item">性别:{{gender}}</view>
    <view class="item">年龄:{{age}}</view>
    <view class="item">专业:{{major}}</view>
    <view class="item">班级:{{class}}</view>
    <view class="item">电话:{{telephone}}</view>
</view>
<!-- 给按钮绑定点击事件 -->
<button bind:tap="login">登录</button>
<!-- 添加两个视图组件,包含关系 -->
<view id="outer" class="outer" bind:tap="viewtap">
    outer
    <view id="inner" class="inner">
        inner
    </view>
</view>
<!-- 按钮,绑定点击事件,调用改名函数 -->
<button bind:tap="rename" style="margin-top: 20px;">改名</button>
<!-- 根据学生年龄和性别显示不同问候 -->
<view class="student">
    <view class="item" wx:if="{{gender == '男'}}">帅哥,你好</view>
    <view class="item" wx:elif="{{age < 18}}">小妹,你好</view>
    <view class="item" wx:else>美女,你好</view>    
</view>
<!-- 块根据性别决定是否显示 -->
<block wx:if="{{gender == '女'}}">
    <view class="item">青春无敌</view>
    <view class="item">永远年轻</view>
    <view class="item">开开心心</view>
</block>
<!-- 显示组件的hidden属性 -->
<button hidden="{{gender == '男'}}">天长地久</button>
  • pages/index/index.wxss
/**index.wxss**/
.student {
    padding: 30rpx;
}
.item {
    font-size: large;
    color:blueviolet;
    line-height: 70rpx;
}
/* 外部视图容器样式 */
.outer {
    width: 80vw;
    height: 20vh;
    background: #ffa;
    margin-left: 10vw;
    margin-top: 3vh;
    text-align: center;
    border: 1rpx solid blueviolet ;
}
/* 内部视图容器样式 */
.inner {
    width: 80%;
    height: 70%;
    background: #aaaaff;
    margin-left: 10%;
    margin-bottom: 10%;
    border: 1rpx solid #f00
}
  • pages/index/index.js
// index.js
Page({
    // 页面初始数据
    data: {
        id: 20220101,
        name: '陈燕文',
        gender: '女',
        age: 19,
        major: '计算机应用',
        class: '2022计应1班',
        telephone: '15867678904'
    },

    // 改名函数
    rename: function() {
        this.setData({
            name: "何赛飞"
        })
    },

    // 求和函数
    sum: function() {
        // 获取学生年龄数据
        let age = this.data.age
        // 根据年龄进行累加求和
        let sum = 0
        for (let i = 1; i <= age; i++) {
            sum = sum + i
        }
        return sum
    },

    // 加载生命周期回调函数
    onLoad: function() {
        console.log('onLoad()函数执行了……')   
        console.log('sum = ' + this.sum())     
    },
    // 显示生命周期回调函数
    onShow: function() {
        console.log('onShow()函数执行了……')        
    },
    // 就绪生命周期回调函数
    onReady: function() {
        console.log('onReady()函数执行了……')        
    },
    // 隐藏生命周期回调函数
    onHide: function() {
        console.log('onHide()函数执行了……')
    },
    // 卸载生命周期回调函数
    onUnload: function() {
        console.log('onUnload()函数执行了……')
    },
    // 页面下拉刷新回调函数
    onPullDownRefresh: function() {
        console.log('onPullDownRefresh()函数执行了……')
    },
    // 定义登录事件处理函数
    login(e) {
        // 弹出吐司
        wx.showToast({
          title: '欢迎登录~',
          icon: 'success',
          duration: 3000
        }),
        // 在控制台输出事件对象
        console.log(e)
    },
    // 定义外部视图容器点击事件处理函数
    viewtap(e) {
        // 输出target和currentTarget的id属性
        console.log(e.target.id + '-' + e.currentTarget.id)
    }
})

三、实现步骤

(一)准备工作

  • 创建微信小程序 - 比较数字,不采用模板
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染
  • 单击【确定】按钮
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染
  • 清空页面结构
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染
  • 初始化页面样式
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染
  • 配置窗口表现
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

(二)实现页面结构

  • pages/index/index.wxml文件里实现页面结构
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染
<!--index.wxml-->
<view class="input">
    <text>请输入第1个数字:</text>
    <input type="number" />
</view>
<view class = "input">
    <text>请输入第2个数字:</text>
    <input type="number" />
</view>
<button class='btn'>比较</button>
<view class="result">
    <text>比较结果:</text>
</view>
  • 查看预览效果
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

(三)实现页面样式

  • 为了页面好看,编写页面样式文件pages/index/index.wxss
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染
/**index.wxss**/
page {
  height: 100vh;
  display: flex;
  flex-direction: column;
  padding: 20rpx;
}
.input {
    height: 6vh;
    width: 100%;
    padding: 3vw;
    display: flex;    
}
.input > input {
    background-color: antiquewhite;
    width: 45vw;
    border: 1px solid #aaa
}
.btn {
    background-color: #1AAD19;
    color: white;
    font-size: 15px;
}
.result {
    margin-top: 2vh;
    padding: 3vw;
}

(四)获取并保存用户输入的数字

1、给文本框绑定输入事件

  • pages/index/index.wxml文件,第一个文本框绑定了事件处理函数inputNum1,第二个文本框绑定了事件处理函数inputNum2
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

2、在页面脚本文件里编写事件处理函数

  • pages/index/index.js文件,定义两个变量,编写两个输入事件处理函数
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染
// index.js
Page({
    // 定义变量
    num1: 0,
    num2: 0,
    // 定义输入事件处理函数
    inputNum1: function(e) {
        // 获取用户输入的数字
        this.num1 = Number(e.detail.value)
    },
    inputNum2: function(e) {
        // 获取用户输入的数字
        this.num2 = Number(e.detail.value)
    }    
})

(五)判断数字大小并显示结果

1、给按钮绑定点击事件

  • pages/index/index.wxml文件,给按钮绑定事件处理函数compare
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

2、定义比较结果字符串变量

  • pages/index/index.js文件,在data属性里定义一个字符串变量result,初值为空字符串
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

3、编写比较事件处理函数

  • pages/index/index.js文件,定义比较事件处理函数compare
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

4、在页面上显示比较结果

  • pages/index/index.wxml文件,设置比较结果文本组件
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染
  • 查看预览效果
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染

(六)运行程序,查看效果

  • 录屏显示操作
    微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染
  • 三种比较结果

微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染微信小程序比较数字大小,微信小程序,数据绑定,事件绑定,条件渲染文章来源地址https://www.toymoban.com/news/detail-843801.html

到了这里,关于微信小程序案例3-1 比较数字的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序数据绑定和事件触发

    数据绑定和修改 微信小程序数据绑定是指将数据和视图进行关联,当数据发生变化时,视图也会相应地发生变化。微信小程序数据绑定主要有以下几种方式: 双向绑定:双向绑定是指数据和视图之间的双向关联,当数据发生变化时,视图也会相应地发生变化,反之亦然。在

    2024年02月10日
    浏览(64)
  • 微信小程序学习之数据绑定,事件绑定,事件传参与数据同步的学习记录

    数据绑定的基本原则:在data中定义数据,在wxml中使用数据 1.1. 在data中定义数据 在data中定义数据,找到页面对应的.js文件,然后把数据定义到data中即可。 pages/list/list.js 1.2. 在wxml中渲染数据 (mustache语法) mustache语法,插值表达式 将data中的数据绑定到页面中渲染,使用mu

    2024年02月13日
    浏览(52)
  • 微信小程序:tabbar、事件绑定、数据绑定、模块化、模板语法、尺寸单位

    目录 1. tabbar 1.1 什么是tabbar  1.2 配置tabbar  2. 事件绑定 2.1 准备表单 2.2 事件绑定 2.3 冒泡事件及非冒泡事件  3. 数据绑定 3.1 官方文档 4. 关于模块化 5. 模板语法 6. 尺寸单位 下图中标记出来的部分即为tabbar:    官方说明文档:   说明: pagePath中指定的页面,必须在app.jso

    2024年02月04日
    浏览(64)
  • 微信小程序-绑定数据并在后台获取它

    如图 遍历列表的过程中需要绑定数据,点击时候需要绑定数据 这里是源代码 这里有几个点注意: 1、代码别写到最外层的view上了,传不到这个button上 data-product-id=“{{item.productId}}” XXXXX 2、如何点击按钮获取当前的 商品id和上下架状态呢? catchtap=“onShelf” 或者 bindtap=“on

    2024年02月21日
    浏览(42)
  • 微信小程序中WXML模版语法-数据绑定方法介绍

    1.数据绑定的基本原则 1在data中定义数据 2在WXML中使用数据 2.在data中定义页面的数据 在页面对应的.js文件中,把数据定义到data对象中即可: 3.Mustache语法的格式 把data中的数据绑定到页面中渲染,使用Mustache语法(双大括号)将变量包起来即可。语法格式为: 4.Mustache语法的应

    2024年02月12日
    浏览(50)
  • 微信小程序form页面数据双向绑定data路径

    在开发过程中数据经常以对象方式组织,对页面修改数据进行保存时使用this.data.obj无法获取修改后数据。 1.只能是一个单一字段的绑定 2.目前,尚不能 data 路径,如 这通常不满足我们日常开发需要 通过在input框中设置 name 属性, 然后在函数中使用 e.detail.value 获取form数据 网上

    2024年02月13日
    浏览(45)
  • 关于微信小程序中的数据双向绑定如何实现

    前言 官方文档:微信小程序双向绑定语法 在 WXML 中,普通的属性的绑定是单向的。例如: 如果使用 this.setData({ value: ‘leaf’ }) 来更新 value ,this.data.value 和输入框的中显示的值都会被更新为 leaf ;但如果用户修改了输入框里的值,却不会同时改变 this.data.value 。 如果需要在

    2024年02月05日
    浏览(51)
  • 完美应对微信小程序的数据管理,从数据双向绑定开始

    微信小程序因为诸多限制所以它无法像 vue 那样通过指令进行数据绑定,那微信小程序有没有什么办法可以实现数据的双向绑定呢?今天给大家分享两种微信小程序数据绑定的方法。 当点击 form 表单中 form-type 为 submit 的 button 组件时,会将表单组件中的 value 值进行提交,需要

    2024年02月11日
    浏览(43)
  • 微信小程序之WXML 模板语法之数据绑定、事件绑定、wx:if和列表渲染

    学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您: 想系统/深入学习某技术知识点… 一个人摸索学习很难坚持,想组团高效学习… 想写博客但无从下手,急需写作干货注入能量… 热爱写作,愿意让自己成为更好

    2024年01月22日
    浏览(61)
  • 【微信小程序入门到精通】— 带你揭开数据绑定的真面目

    对于目前形式,微信小程序是一个热门,那么我们该如何去学习并且掌握之后去做实际项目呢? 为此我特意开设此专栏,在我学习的同时也将其分享给大家! 本篇文章主要介绍数据绑定这一名词,那么我们如何在小程序页面定义数据并且使用呢? 首先我们介绍一下数据绑定

    2024年02月09日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包