首页 > 编程语言 >OUC 2024夏 移动软件开发 实验一:第一个微信小程序

OUC 2024夏 移动软件开发 实验一:第一个微信小程序

时间:2024-08-26 21:26:10浏览次数:10  
标签:index OUC 微信 昵称 2024 头像 nickName pages 页面

一、实验准备

课程主页:课程主页(gitee.com)

实验文档:lab1.pdf (gitee.com)

学习视频:第一个小程序(1) bilibili.com

二、实验目标

1、学习使用快速启动模板创建小程序的方法;

2、学习不使用模板手动创建小程序的方法。

三、实验方法

1、使用模板创建小程序:

如下图所示,填写项目名称、目录、AppID以及所使用的后端服务之后,选择一个所需的模板即可快速创建小程序:

在这里插入图片描述

2、不使用模板创建小程序:
2.1 项目创建

如下图所示,填写项目名称、目录、AppID以及所使用的后端服务之后,即可不使用模板创建小程序:

在这里插入图片描述

2.2 项目配置
2.2.1 创建页面文件

项目创建完毕后,在根目录中会生成文件夹pages用于存放页面文件。

具体操作如下:

(1)将 app.json 文件内 pages 属性中的“pages/logs/logs”删除,并删除上一行末尾的逗号。

(2)按快捷键 Ctrl + S 保存当前修改。

2.2.2 删除和修改文件

具体操作如下:

(1)删除 utils 文件夹及其内部所有内容。

(2)删除 pages 文件夹下的 logs 目录及其内部所有内容。

(3)删除 index.wxml 和 index.wxss 中的全部代码。

(4)删除 index.js 中的全部代码,并且输入关键词“page”进行自动补全。

(5)删除 app.wxss 中的全部代码。

(6)删除 app.js 中的全部代码, 并且输入关键词“app”进行自动补全。

四、实验步骤

列出实验的关键步骤、代码解析、截图。

  1. 创建项目

    • 使用微信开发者工具创建一个新的小程序项目。
    • 配置项目的基本信息,如项目名称、AppID等。
  2. 编写index.wxml

    <!-- pages/index/index.wxml -->
    <view class='container'>
      <!-- 显示头像图片 -->
      <image src='{{src}}' class='imageStyle1'></image>
      <!-- 显示昵称 -->
      <text>{{nickName}}</text>
      <!-- 按钮,用于选择头像 -->
      <button open-type="chooseAvatar" bindchooseavatar="getMyInfo">点击获取头像</button>
      <!-- 输入框,用于输入昵称 -->
      <input type="text" placeholder="请输入昵称" bindinput="bindInput" />
    </view>
    
    
  3. 编写index.wxss

    /* pages/index/index.wxss */
    .container {
      /* 设置容器高度为视口高度 */
      height: 100vh;
      /* 使用flex布局 */
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: space-around;
    }
    .imageStyle1 {
      /* 设置图片宽度 */
      width: 400rpx;
      /* 设置图片圆角 */
      border-radius: 50%;
    }
    text {
      /* 设置文本字体大小 */
      font-size: 50rpx;
      /* 设置文本颜色 */
      color: red;
    }
    
    
  4. 编写index.js

    // pages/index/index.js
    Page({
      data: {
        // 初始化昵称
        nickName: 'Hello World!',
        // 初始化头像路径
        src: '/images/WechatLogo.jpg',
        newName: ''
      },
    
      // 获取用户头像信息
      getMyInfo: function(e) {
        console.log("avatarUrl", e.detail.avatarUrl);
        let info = e.detail;
        // 更新昵称和头像
        this.setData({
          nickName: info.nickName,
          src: info.avatarUrl
        });
      },
    
      // 绑定输入框输入事件
      bindInput: function(e) {
        // 更新昵称
        this.setData({
          nickName: e.detail.value
        });
      },
    
      /**
       * 生命周期函数--监听页面加载
       */
      onl oad(options) {
    
      },
    
      /**
       * 生命周期函数--监听页面初次渲染完成
       */
      onReady() {
    
      },
    
      /**
       * 生命周期函数--监听页面显示
       */
      onShow() {
    
      },
    
      /**
       * 生命周期函数--监听页面隐藏
       */
      onHide() {
    
      },
    
      /**
       * 生命周期函数--监听页面卸载
       */
      onUnload() {
    
      },
    
      /**
       * 页面相关事件处理函数--监听用户下拉动作
       */
      onPullDownRefresh() {
    
      },
    
      /**
       * 页面上拉触底事件的处理函数
       */
      onReachBottom() {
    
      },
    
      /**
       * 用户点击右上角分享
       */
      onShareAppMessage() {
    
      }
    })
    
    
  5. 编写App.js

    {
      "pages": [
        "pages/index/index",
        "pages/index"
      ],
      "window": {
        "navigationBarTextStyle": "black",
        "navigationBarTitleText": "小程序",
        "navigationBarBackgroundColor": "#09B831"
      },
      "style": "v2",
      "componentFramework": "glass-easel",
      "sitemapLocation": "sitemap.json",
      "lazyCodeLoading": "requiredComponents"
    }
    
  6. 运行项目

    (1)在微信开发者工具中运行项目,查看首页的页面效果。

    (2)测试各个功能是否正常工作,依次检查头像选择功能、昵称输入功能。

五、程序运行结果

列出程序的最终运行结果及截图。

  1. 页面展示

    • 页面显示一个头像图片、昵称文本、获取头像按钮和输入框。
    • 点击按钮可以选择头像,输入框可以输入昵称,昵称会与默认显示“Hello World!”的文本框同时更新。
  2. 截图

    • 展示页面的截图,显示各个功能的效果。
图1 首页视图
图2 点击按钮
图3 输入昵称

六、问题总结与体会

描述实验过程中所遇到的问题,以及是如何解决的。有哪些收获和体会,对于课程的安排有哪些建议。

  1. 遇到的问题

    • 问题描述:使用示例中的“getUserInfo”获取用户信息时失败,导致用户昵称显示为“微信用户”,头像显示为灰色。

    • 问题原因:通过查阅微信官方文档,发现用户头像和昵称的获取规则已经调整。现在需要通过getUserProfile接口来获取用户信息,并且只能在页面点击事件(例如按钮上的bindtap回调)中调用。每次请求都会弹出授权窗口,用户同意后才会返回UserInfo

在这里插入图片描述
在这里插入图片描述

  1. 解决方法

    • index.wxml文件中使用如下:

        <!-- 按钮,用于选择头像 -->
        <button open-type="chooseAvatar" bindchooseavatar="getMyInfo">点击获取头像</button>
        <!-- 输入框,用于输入昵称 -->
        <input type="text" placeholder="请输入昵称" bindinput="bindInput" />
      
    • index.js文件中使用如下:

        // 获取用户头像信息
        getMyInfo: function(e) {
          console.log("avatarUrl", e.detail.avatarUrl);
          let info = e.detail;
          // 更新昵称和头像
          this.setData({
            nickName: info.nickName,
            src: info.avatarUrl
          });
        },
      
        // 绑定输入框输入事件
        bindInput: function(e) {
          // 更新昵称
          this.setData({
            nickName: e.detail.value
          });
        },
      
  2. 收获与体会

    这次实验作为小程序开发的入门,通过编写一个获取微信头像和昵称的小demo,展示了如何从零开始设计一个微信小程序,从而熟悉了小程序的基本开发框架和常用组件的使用。

标签:index,OUC,微信,昵称,2024,头像,nickName,pages,页面
From: https://blog.csdn.net/m0_73384012/article/details/141333965

相关文章

  • OUC 2024夏 移动软件开发 实验三:微信小程序云开发
    一、实验准备课程主页:课程主页(gitee.com)实验文档:lab3文档实验代码:lab3代码二、实验目标学习微信小程序云开发的基础知识。能够完成利用文本搜索的功能就好,图像识别、语音识别接口有时有问题,不强求。三、实验步骤1、创建微信小程序过程见前两个lab,在此不再赘述。2......
  • 【ACM出版,快录用】2024年智能医疗与可穿戴智能设备国际学术会议(SHWID 2024, 10月18-2
    2024年智能医疗与可穿戴智能设备国际学术会议(SHWID2024)将于2024年10月18-20日在广东广州举行。本次会议主要围绕“智能医疗与可穿戴智能设备”的最新研究展开,旨在荟聚世界各地该领域的专家、学者、研究人员及相关从业人员,分享研究成果,探索热点问题,交流新的经验和技术。......
  • 2024下半年,软考和PMP推荐考哪个?
    在项目管理领域,专业资格认证是提升个人能力、拓宽职业发展道路的重要途径。2024年下半年,面对软考(计算机技术与软件专业技术资格水平考试)和PMP(项目管理专业人士资格认证)两大热门证书,许多从业者陷入了选择的困境。本文旨在分析两者的证书价值、适合人群、考试安排,为大家提供选......
  • C#/.NET/.NET Core技术前沿周刊 | 第 2 期(2024年8.19-8.25)
    前言C#/.NET/.NETCore技术前沿周刊,你的每周技术指南针!记录、追踪C#/.NET/.NETCore领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿,助力技术成长与视野拓宽。欢迎投稿,推荐或自荐优质文章/项目/学习资源等。每......
  • 4款超火的U盘恢复软件,2024年一键操作,数据瞬间回
    在这个数字化的时代,数据简直太重要了。不管是工作文件、学习资料,还是那些珍贵的照片和视频,要是不小心弄丢了或者删掉了,那损失可就大了。所以,数据恢复软件就成了很多人电脑里必不可少的工具。今天,我要给大家介绍四款特别受欢迎的U盘数据恢复软件。咱们通过试用来看看,这些软件是......
  • 2024年了,你还在手动打字?Top4懒人技巧,让你秒变高效达人!
    在忙碌的现代工作环境里,我们经常需要处理大量的信息,比如会议记录、客户谈话或者远程合作时的录音。录音是个好东西,因为它能帮我们记下所有重要的细节。但问题来了,这么多录音文件,怎么才能快速把它们变成文字呢?这可是让很多人头疼的大事。不过别担心,2024年出现了几款超给力的录音......
  • 2024年秋季招聘:大型语言模型(LLM)相关面试题汇总
    0一些基础术语大模型:一般指1亿以上参数的模型,但是这个标准一直在升级,目前万亿参数以上的模型也有了。大语言模型(LargeLanguageModel,LLM)是针对语言的大模型。175B、60B、540B等:这些一般指参数的个数,B是Billion/十亿的意思,175B是1750亿参数,这是ChatGPT大约的参数规模。强......
  • 10款主流图纸加密软件强力推荐|2024年图纸加密软件最佳选择!
    在现代商业环境中,企业图纸作为重要的知识产权和核心竞争力,一旦泄露可能会对企业造成严重的经济损失和竞争劣势。随着信息安全需求的不断提高,图纸加密软件的应用变得尤为重要。图纸加密不仅能够保护企业的技术机密,还能有效防止内部人员的恶意泄密。1.安秉图纸加密软件安秉图......
  • 【Pycharm2024.1.2安装使用教程】24年教程,小白轻松上手!(附安装包永久机火码+工具)
      今天给大家免费分享一个Pycharm2024.1.2版的安装使用教程,全文通过文字+图片的方式讲解,手把手教你如何安装使用Pycharm,只需要几分钟即可搞定!看之前先看这,所有机火码的机火是谐音(你们知道的谐音!)一、下载安装pycharm(支持mac、window、linux)1、建议直接在官网下载......
  • WIN/MAC 图像处理软件Adobe Photoshop PS2024软件下载安装
    目录一、软件概述1.1基本信息1.2主要功能二、系统要求2.1Windows系统要求2.2macOS系统要求三、下载四、使用教程4.1基本界面介绍4.2常用工具使用4.3进阶操作一、软件概述1.1基本信息AdobePhotoshop(简称PS)是一款由AdobeSystems公司开发并广泛使用的......