教程&硬货|微信小程序开发之基于vue的微信开发工具JS文件解读(一)

这篇具有很好参考价值的文章主要介绍了教程&硬货|微信小程序开发之基于vue的微信开发工具JS文件解读(一)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1 前言

鉴于前段时间出的第一篇记录安装Nodejs和HBuilderX搭建、部署微信小程序开发环境(一),有小伙伴问到关于微信开发工具的使用,特出本文带大家简单了解一下,开始“扫盲”!

2 前期准备

微信公众平台:https://mp.weixin.qq.com/

留意一下微信公众平台是注册小程序账号的,里面有个AppID很重要,后续开发要用到。这个AppSecret(小程序密钥)要找地方记起来。

教程&硬货|微信小程序开发之基于vue的微信开发工具JS文件解读(一)

微信开发者工具:https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html

微信开发者工具这里是要下载的对应软件的网址,下载stable版本即可,大家看着windows对应32位和64位,macos对应intel芯片和m芯片,不要下载错了。

教程&硬货|微信小程序开发之基于vue的微信开发工具JS文件解读(一)

3 微信开发者工具

3.1 创建项目

在这里选择小程序即可,AppID即在微信公众平台申请到的,复制粘贴上去即可

3.2 页面介绍

主要的工作区:
教程&硬货|微信小程序开发之基于vue的微信开发工具JS文件解读(一)

教程&硬货|微信小程序开发之基于vue的微信开发工具JS文件解读(一)
pages是整个页面的文件夹,最主要就这三个文件:

文件 必需 作用
app.js 小程序逻辑
app.json 小程序公共配置
app.wxss 小程序公共样式表

而index就是所见的主页:

文件类型 必需 作用
js 页面逻辑
wxml 页面结构
json 页面配置
wxss 页面样式表

4 读懂Pages

作为初学者我们一步一步来,优先理解Pages的这四个文件

4.1 index.wxss

教程&硬货|微信小程序开发之基于vue的微信开发工具JS文件解读(一)

微信小程序页面的样式表,用于美化页面布局和样式:

  • userinfo 用于定义包含用户信息的容器的样式。display: flex 指定容器使用 Flex 布局,flex-direction: column 指定子元素垂直排列,align-items: center 指定子元素水平居中,color: #aaa 指定文本颜色为浅灰色。

  • userinfo-avatar 用于定义用户头像的样式。overflow: hidden 指定容器溢出部分不可见,width: 128rpx 和 height: 128rpx 指定容器宽度和高度为 128 物理像素,margin: 20rpx 指定容器与其它元素之间的空隙为 20 物理像素,border-radius: 50% 指定容器为圆形。

  • usermotto用于定义页面底部的文本样式。margin-top: 200px 指定文本距离顶部的距离为 200 物理像素。

4.2 index.wxml

教程&硬货|微信小程序开发之基于vue的微信开发工具JS文件解读(一)

WXML文件用于定义页面的结构和内容,包含以下几个部分:

  • class="container"的<view>标签是整个页面的容器,里面包含了用户信息和一个motto。
  • class="userinfo"的<view>标签是用来显示用户信息的,包含三个<block>标签。第一个<block>用于展示用户头像和昵称,如果支持开放数据组件,则使用<open-data>标签显示头像和昵称。第二个<block>用于判断是否已经获取到用户信息,如果没有则显示一个“获取头像昵称”的按钮,否则使用<image><text>标签显示头像和昵称。第三个<block>用于判断是否支持获取用户信息,如果支持则显示一个“获取头像昵称”的按钮,否则提示需要使用1.4.4及以上版本基础库。
  • class="usermotto"的<view>标签用于显示motto。
    {{}}用于在WXML中插入JavaScript表达式,比如{{canIUseOpenData}}用于判断是否支持开放数据组件。
  • bindtap和bindgetuserinfo是用于绑定事件的属性,分别表示点击事件和获取用户信息事件,后面跟着的是对应的处理函数。

4.3 index.json

教程&硬货|微信小程序开发之基于vue的微信开发工具JS文件解读(一)
JSON 对象用于在小程序页面中引入自定义组件。在小程序中,如果想要使用自定义组件,需要先在对应的 JSON 文件中声明该组件。usingComponents 是一个对象,其中的每个键都是一个自定义组件的名字,对应的值是这个组件的路径。这里目前是空白,例如加入my-component

{
  "usingComponents": {
    "my-component": "/components/my-component/index"
  }
}

4.4 index.js

教程&硬货|微信小程序开发之基于vue的微信开发工具JS文件解读(一)
这一部分是重头戏,这是小程序的逻辑部分,主要是定义了一个Page对象,其中包含了一些数据和事件处理函数。

  • 数据部分包括:

    • motto:用于存储字符串"Hello World",将在小程序界面中展示。
    • userInfo:用于存储用户信息,初始值为空对象{},当用户授权后,将存储相应的用户信息。
    • hasUserInfo:用于标识用户信息是否已经获取到,初始值为false。
    • canIUse:用于判断小程序是否支持使用button组件的open-type属性为getUserInfo的版本号,如果支持则为true,否则为false。
    • canIUseGetUserProfile:用于判断小程序是否支持使用wx.getUserProfile获取用户信息,如果支持则为true,否则为false。
    • canIUseOpenData:用于判断小程序是否支持使用open-data组件获取用户头像和昵称,如果支持则为true,否则为false。
  • 事件处理函数部分包括:

    • bindViewTap:用于点击跳转到logs页面。
    • onLoad:用于在页面加载时判断小程序是否支持使用wx.getUserProfile获取用户信息。
    • getUserProfile:用于使用wx.getUserProfile获取用户信息,并将获取到的信息存储到userInfo中。
    • getUserInfo:用于使用旧版接口wx.getUserInfo获取用户信息(即将废弃),并将获取到的信息存储到userInfo中。

5 logs

这是日志的四个文件,和index的是一样的便不展开了
教程&硬货|微信小程序开发之基于vue的微信开发工具JS文件解读(一)

6 小程序的主要文件

教程&硬货|微信小程序开发之基于vue的微信开发工具JS文件解读(一)

6.1 app.js

// app.js
App({
  onLaunch() {
    // 展示本地存储能力
    const logs = wx.getStorageSync('logs') || []
    logs.unshift(Date.now())
    wx.setStorageSync('logs', logs)

    // 登录
    wx.login({
      success: res => {
        // 发送 res.code 到后台换取 openId, sessionKey, unionId
      }
    })
  },
  globalData: {
    userInfo: null
  }
})

这是小程序的主入口文件 app.js,其中定义了小程序的生命周期函数和全局数据对象。

  • onLaunch 是小程序初始化时执行的生命周期函数,它通常用来获取本地存储、网络请求等操作。

  • globalData 是小程序的全局数据对象,可以用来存储全局的数据。

  • 在该文件中,onLaunch 函数中展示了如何使用本地存储 wx.getStorageSync 和 wx.setStorageSync,将日志存储到本地。

  • wx.login 是微信登录的接口,调用该接口可以获取用户登录凭证(code),开发者可以将该凭证发送到自己的服务器,以便使用微信开放平台提供的登录 API 获取用户信息。在该示例中,wx.login 并没有实现该功能。

  • globalData 中定义了一个空的 userInfo,开发者可以通过授权获取用户信息并将其保存到该对象中,以方便在小程序的各个页面中使用。

6.2 app.json

{
  "pages":[
    "pages/index/index",
    "pages/logs/logs"
  ],
  "window":{
    "backgroundTextStyle":"light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "Weixin",
    "navigationBarTextStyle":"black"
  },
  "style": "v2",
  "sitemapLocation": "sitemap.json"
}

这是一个小程序的全局配置文件app.json,包含了小程序的一些基本配置信息,比如pages、window等字段,其中:

  • pages表示小程序的页面路径,是一个数组类型,数组中的每一项代表一个页面;
  • window字段控制小程序的全局风格,包括背景颜色、导航栏背景色、标题文字等;
  • style表示小程序的样式架构,当前为v2版本;
  • sitemapLocation表示小程序的页面地图文件位置。

一下是官网配置文件的页面配置参数

属性 类型 默认值 描述 最低版本
navigationBarBackgroundColor HexColor #000000 导航栏背景颜色,如 #000000
navigationBarTextStyle string white 导航栏标题颜色,仅支持 black / white
navigationBarTitleText string 导航栏标题文字内容
navigationStyle string default 导航栏样式,仅支持以下值:default 默认样式,custom 自定义导航栏,只保留右上角胶囊按钮。iOS/Android 微信客户端 7.0.0,Windows 微信客户端不支持
homeButton boolean false 在非首页、非页面栈最底层页面或非tabbar内页面中的导航栏展示home键 微信客户端 8.0.24
backgroundColor HexColor #ffffff 窗口的背景色
backgroundTextStyle string dark 下拉 loading 的样式,仅支持 dark / light
backgroundColorTop string #ffffff 顶部窗口的背景色,仅 iOS 支持 微信客户端 6.5.16
backgroundColorBottom string #ffffff 底部窗口的背景色,仅 iOS 支持 微信客户端 6.5.16
enablePullDownRefresh boolean false 是否开启当前页面下拉刷新。详见 Page.onPullDownRefresh
onReachBottomDistance number 50 页面上拉触底事件触发时距页面底部距离,单位为px。详见 Page.onReachBottom
pageOrientation string portrait 屏幕旋转设置,支持 auto / portrait / landscape。详见 响应显示区域变化 2.4.0 (auto) / 2.5.0 (landscape)
disableScroll boolean false 设置为 true 则页面整体不能上下滚动。只在页面配置中有效,无法在 app.json 中设置
usingComponents Object 页面自定义组件配置 1.6.3
initialRenderingCache string 页面初始渲染缓存配置,支持 static / dynamic 2.11.1
style string default 启用新版的组件样式 2.10.2
singlePage Object 单页模式相关配置 2.12.0
restartStrategy string homePage 重新启动策略配置 2.8.0
handleWebviewPreload string static 控制预加载下个页面的时机。支持 static / manual / auto 2.15.0
visualEffectInBackground string 切入系统后台时,隐藏页面内容,保护用户隐私。支持 hidden / none,若对页面单独设置则会覆盖全局的配置,详见 全局配置 2.15.0
enablePassiveEvent Object 或 boolean 事件监听是否
renderer string 渲染后端 2.25.2

7 讨论

本文仅是于新建一个项目,然后对其原始文件进行个大概的解读,深究还要细读官方文件:https://developers.weixin.qq.com/miniprogram/dev/framework/,很详细很详细,巩固好JS打好地基。文章来源地址https://www.toymoban.com/news/detail-486703.html

到了这里,关于教程&硬货|微信小程序开发之基于vue的微信开发工具JS文件解读(一)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 为什么我的微信小程序开发工具调试窗口一片空白?

    为什么我的微信小程序开发工具调试窗口一片空白?

    解决方案 先卸载现在版本,更新了一下微信小程序开发工具就好啦! 如果消息显示调试器加载错误,从任务栏打开工具可能导致该问题,那么就从桌面上打开,就能看见调试器中的内容了。

    2024年02月11日
    浏览(10)
  • 使用微信开发者工具模拟微信小程序定位

    使用微信开发者工具模拟微信小程序定位

            哈喽,各位同僚们,我们平时在测试微信小程序的时候,如果小程序中有获取定位或者地图的功能,测试场景中常常需要去模拟不同的位置,例如我们模拟在电子围栏的外面、里面和边界区域等。那么,我们如何在模拟微信小程序的不同位置呢?我曾经使用过一些模

    2024年04月25日
    浏览(67)
  • mac HBuilderX 初体验 - 微信小程序开发报错: 微信开发者工具打开项目失败,请参阅启动日志!

    原文在我的博客 - 微信开发者工具打开项目失败,请参阅启动日志 第一次使用HBuilderX (之前都是webstorm),第一次体验小程序,但是启动小程序模拟器的时候,报了错: 微信开发者工具打开项目失败,请参阅启动日志 大概踩了两个坑: 我先安装了HBuilderX,再安装了微信小程序

    2024年02月12日
    浏览(18)
  • 【uniapp】uniapp微信小程序开发:启动微信开发者工具提示no such file or directory错误...

    【uniapp】uniapp微信小程序开发:启动微信开发者工具提示no such file or directory错误...

    当使用uniapp运行微信小程序模拟的时候,遇到这样的错误: #initialize-error: Error: ENOENT: no such file or directory  开启安全服务端口

    2024年02月16日
    浏览(35)
  • 微信开发者工具使用教程

    微信开发者工具使用教程

    近段时间有很多小伙伴问微信小程序怎么开发啊?开发的第一步就是安装微信web开发者工具,今天就来教你设置好开发者工具。 一、下载开发者工具 https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html 下载安装好之后打开会进入这个界面,倘若开发者首次启动开发者工具

    2024年02月03日
    浏览(11)
  • 微信小程序开发工具导入开发项目教程-阿白必备

    微信小程序开发工具导入开发项目教程-阿白必备

    1. 注册微信小程序或者小程序测试号 2. 下载并安装微信开发者工具 3. 打开-开发工具导入项目 4. 按下图操作。 5. 直接打开 6.点击编译后,即可预览。 7.上传代码到后台 点此进入微信公众平台-发布。 项目免费下载

    2024年02月12日
    浏览(38)
  • 微信小程序开发教程:项目二微信小程序开发基础 课后习题

    微信小程序开发教程:项目二微信小程序开发基础 课后习题

    《微信小程序开发教程》主编/黄寿孟 易芳 陶延涛 湖南大学出版社 目录 一、单选题 二、多选题 三、判断题 四、填空题 五、简答题 1.请简单描述页面样式的单位rpx与px的关系。 2.简单地介绍开发常用页面组件。 六、编程题 1.请编写一个商品列表页面,展示商品名称和价格。

    2024年02月09日
    浏览(5)
  • 微信开发者工具下载安装教程

    微信开发者工具下载安装教程

    微信小程序账号注册登录 微信开发者工具的下载和安装 小程序创建项目 微信小程序账号注册登录 下载地址: 官网:https://mp.weixin.qq.com/cgi-bin/wx 或者其他网盘资源,建议走官网,下载安装耗时不多。 ①点击前往注册 ②按照步骤进行账号注册或已有账号点击右上角“立即登录

    2024年02月06日
    浏览(40)
  • 快速上手微信小程序(纯原生)基于微信开发者工具+云开发

    快速上手微信小程序(纯原生)基于微信开发者工具+云开发

    最近开发一个小程序。因为体量实在不大,两张表,几个接口。便打算写原生的代码。没有使用uniapp等框架。记录一下一个小程序从搭建到审核发布的那些坑和经验做为学习笔记。 几个网站请收藏 你的小程序需要开发工具: 保姆级传送门 你的小程序需要一个身份证: 微信公

    2024年02月10日
    浏览(68)
  • 微信小程序开发教程

    微信小程序开发教程

    下载微信小程序开发者工具:下载地址 注册微信小程序:前往注册 微信小程序开发文档:前往阅览 打开开发者工具,用微信扫码进入创建页面,填写配置如下: 需要注意的是:AppId可以选择已经注册的账号Appid,也可以选择测试号。区别是测试号不支持云开发。这里暂时选

    2023年04月22日
    浏览(9)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包