实验六 智能手机互联网程序设计(微信程序方向)实验报告

本文主要是介绍实验六 智能手机互联网程序设计(微信程序方向)实验报告,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

实验目的和要求

  • 请完成创建图片库应用,显示一系列预设的图片。

  •  提供按钮来切换显示不同类别的图片。

 

二、实验步骤与结果(给出对应的代码或运行结果截图)

1.WXML

<view>

  <button bindtap="showAll">所有图片</button>

  <button bindtap="showAnimals">动物</button>

  <button bindtap="showNature">自然</button>

  <view class="image-list">

    <block wx:for="{{show}}" wx:key="index"> 

      <image src="{{item.url}}" mode="widthFix"></image>

    </block>

  </view>

</view>

2.WXSS

button {

  border:none ;/* 去除按钮边框 */

  border-radius: 5px;/* 设置边角为圆角,圆角半径为5px */

  text-align: center; /* 文字居中显示 */

  font-size: 16px;/* 文字大小设置为16px */

  display: block;/* 设置按钮为块级元素,使其独占一行 */

  width: 90%;/* 按钮宽度为容器宽度的90%,以保持一定的边距 */

  margin: 10PX auto;/* 垂直边距为10px,水平自动居中对齐 */

  padding: 10px;/* 内边距为10px,增加点击区域,使按钮更容易点击 */

  background-color: #007AFF;/* 设置按钮的背景颜色为深蓝色 */

  color:#ffffff/* 设置按钮文字颜色为白色,以提高对比度和可读性 */

 

}

/* 图片样式 */

image {

 width: 100%; /* 图片宽度设置为100%填满容器宽度,适应不同屏幕 */

  margin-top: 10px;/* 图片上边距为10px,用于与上方内容保持距离 */

  margin-bottom: 10px;/* 图片下边距也为10px,与下方内容保持距离 */

  border-radius: 8px;/* 设置图片边角为圆角,圆角半径为8px,增加美观 */

}

3.JS

Page({

  /**

   * 页面的初始数据

   */

  data: {

    images: [

      { url: 'https://img2.baidu.com/it/u=622413623,4084455738&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=1082', type: 'animal' },

      { url: 'https://img2.baidu.com/it/u=2614849573,2966135114&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=888', type: 'nature' },

      { url: 'https://img2.baidu.com/it/u=2829124655,2639685270&fm=253&fmt=auto&app=138&f=JPEG?w=889&h=500', type: 'animal' }

    ],

    show: [] //

  },

  /**

   * 生命周期函数--监听页面加载

   */

  onLoad: function (options) {

    

  },

  showAll(){

    this.setData({

      show:this.data.images

    })

  },

  showAnimals() {

    const show_animal=this.data.images.filter(images=>images.type === "animal")

    this.setData({

      show:show_animal

    });

  },

  showNature() {

    const show_nature=this.data.images.filter(images=>images.type === "nature")

    this.setData({

      show:show_nature

    });

  },

  /**

   * 生命周期函数--监听页面初次渲染完成

   */

  onReady: function () {

    

  },

  /**

   * 生命周期函数--监听页面显示

   */

  onShow: function () {

    

  },

  /**

   * 生命周期函数--监听页面隐藏

   */

  onHide: function () {

    

  },

  /**

   * 生命周期函数--监听页面卸载

   */

  onUnload: function () {

    

  },

  /**

   * 页面相关事件处理函数--监听用户下拉动作

   */

  onPullDownRefresh: function () {

    

  },

  /**

   * 页面上拉触底事件的处理函数

   */

  onReachBottom: function () {

    

  },

  /**

   * 用户点击右上角分享

   */

  onShareAppMessage: function () {

    

  }

})

实验思路

1.WXML
1.1 定义页面主视图
页面的主体内容被一个view组件包含,这个view作为容器,里面包含所有的子组件,包括按钮和图片列表。
<view>-><button>*3 & <view class="image-list">

1.2 添加功能按钮
在页面的顶部,我们添加了三个button组件,每个按钮通过bindtap事件绑定到相应的函数,用于控制下方图片列表的显示内容:

第一个按钮(所有图片):当点击时,触发showAll函数,显示所有图片。
<button bindtap="showAll">所有图片</button>
第二个按钮(动物):当点击时,触发showAnimals函数,仅显示属于动物类别的图片。
<button bindtap="showAnimals">动物</button>
第三个按钮(自然):当点击时,触发showNature函数,仅显示属于自然类别的图片。
<button bindtap="showNature">自然</button>


1.3 设置图片展示区
在按钮下方,设置了一个类名为“image-list”的view组件作为图片展示区。这个区域使用了block容器来循环渲染filteredImages数组中的每一项:
<block wx:for="{{filteredImages}}" wx:key="index"> </block>
每个block组件包含一个image组件,用于显示单个图片。
image组件的src属性绑定到数组项的url属性,这样每个图片的链接都是动态加载的。
<image src="{{item.url}}" mode="widthFix"></image>
图片使用mode="widthFix"属性确保图片的宽度自适应容器宽度

2.WXSS

/* 按钮样式 */
button {
  /* 设置按钮为块级元素,使其独占一行 */
  /* 按钮宽度为容器宽度的90%,以保持一定的边距 */
  /* 垂直边距为10px,水平自动居中对齐 */
  /* 内边距为10px,增加点击区域,使按钮更容易点击 */
  /* 设置按钮的背景颜色为深蓝色 */
  /* 设置按钮文字颜色为白色,以提高对比度和可读性 */
  /* 去除按钮边框 */
  /* 设置边角为圆角,圆角半径为5px */
  /* 文字居中显示 */
  /* 文字大小设置为16px */
}

  
/* 图片样式 */
image {
  /* 图片宽度设置为100%填满容器宽度,适应不同屏幕 */
  /* 图片上边距为10px,用于与上方内容保持距离 */
  /* 图片下边距也为10px,与下方内容保持距离 */
  /* 设置图片边角为圆角,圆角半径为8px,增加美观 */
}

3.JS
// index.js
Page({
  data: {
    images: [
      { url: '图像1路径', type: 'animal' },
      { url: '图像2路径', type: 'nature' },
      { url: '图像3路径', type: 'animal' }
    ],
    filteredImages: [] //
  },

// 方法:显示所有图片
  showAll() {
    请补全注释里的代码 // 调用setData方法来更新filteredImages数组为所有图片的数组
  },
  showAnimals() {
        请补全注释里的代码 // 使用filter方法筛选出类型为'animal'的图片 (this.data.images.filter)
    this.setData({
       请补全注释里的代码 // 调用setData方法来更新页面数据仅显示筛选后的'animal'类型图片
    });
  },
  showNature() {
    请补全注释里的代码 // 使用filter方法筛选出类型为'nature'的图片 (this.data.images.filter)
    this.setData({
    请补全注释里的代码 // 调用setData方法来更新页面数据仅显示筛选后的'animal'类型图片
    });
  }
});

可以使用的图片路径:
https://img2.baidu.com/it/u=622413623,4084455738&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=1082
https://img2.baidu.com/it/u=2614849573,2966135114&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=888
https://img2.baidu.com/it/u=2829124655,2639685270&fm=253&fmt=auto&app=138&f=JPEG?w=889&h=500

这篇关于实验六 智能手机互联网程序设计(微信程序方向)实验报告的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/911603

相关文章

Spring Boot 结合 WxJava 实现文章上传微信公众号草稿箱与群发

《SpringBoot结合WxJava实现文章上传微信公众号草稿箱与群发》本文将详细介绍如何使用SpringBoot框架结合WxJava开发工具包,实现文章上传到微信公众号草稿箱以及群发功能,... 目录一、项目环境准备1.1 开发环境1.2 微信公众号准备二、Spring Boot 项目搭建2.1 创建

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

使用Docker构建Python Flask程序的详细教程

《使用Docker构建PythonFlask程序的详细教程》在当今的软件开发领域,容器化技术正变得越来越流行,而Docker无疑是其中的佼佼者,本文我们就来聊聊如何使用Docker构建一个简单的Py... 目录引言一、准备工作二、创建 Flask 应用程序三、创建 dockerfile四、构建 Docker

java向微信服务号发送消息的完整步骤实例

《java向微信服务号发送消息的完整步骤实例》:本文主要介绍java向微信服务号发送消息的相关资料,包括申请测试号获取appID/appsecret、关注公众号获取openID、配置消息模板及代码... 目录步骤1. 申请测试系统2. 公众号账号信息3. 关注测试号二维码4. 消息模板接口5. Java测试

Python基于微信OCR引擎实现高效图片文字识别

《Python基于微信OCR引擎实现高效图片文字识别》这篇文章主要为大家详细介绍了一款基于微信OCR引擎的图片文字识别桌面应用开发全过程,可以实现从图片拖拽识别到文字提取,感兴趣的小伙伴可以跟随小编一... 目录一、项目概述1.1 开发背景1.2 技术选型1.3 核心优势二、功能详解2.1 核心功能模块2.

python编写朋克风格的天气查询程序

《python编写朋克风格的天气查询程序》这篇文章主要为大家详细介绍了一个基于Python的桌面应用程序,使用了tkinter库来创建图形用户界面并通过requests库调用Open-MeteoAPI... 目录工具介绍工具使用说明python脚本内容如何运行脚本工具介绍这个天气查询工具是一个基于 Pyt

Ubuntu设置程序开机自启动的操作步骤

《Ubuntu设置程序开机自启动的操作步骤》在部署程序到边缘端时,我们总希望可以通电即启动我们写好的程序,本篇博客用以记录如何在ubuntu开机执行某条命令或者某个可执行程序,需要的朋友可以参考下... 目录1、概述2、图形界面设置3、设置为Systemd服务1、概述测试环境:Ubuntu22.04 带图

Python程序打包exe,单文件和多文件方式

《Python程序打包exe,单文件和多文件方式》:本文主要介绍Python程序打包exe,单文件和多文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python 脚本打成exe文件安装Pyinstaller准备一个ico图标打包方式一(适用于文件较少的程

Python程序的文件头部声明小结

《Python程序的文件头部声明小结》在Python文件的顶部声明编码通常是必须的,尤其是在处理非ASCII字符时,下面就来介绍一下两种头部文件声明,具有一定的参考价值,感兴趣的可以了解一下... 目录一、# coding=utf-8二、#!/usr/bin/env python三、运行Python程序四、

如何基于Python开发一个微信自动化工具

《如何基于Python开发一个微信自动化工具》在当今数字化办公场景中,自动化工具已成为提升工作效率的利器,本文将深入剖析一个基于Python的微信自动化工具开发全过程,有需要的小伙伴可以了解下... 目录概述功能全景1. 核心功能模块2. 特色功能效果展示1. 主界面概览2. 定时任务配置3. 操作日志演示