Hi,我是前端人类学(之前叫布兰妮甜)!
从今天开始,我将开启一个全新的微信小程序开发系列教程,通过实际项目带大家系统学习小程序开发。作为系列的第一篇文章,我们将从最基础的环境搭建开始,一步步学习如何使用微信开发者工具创建项目、配置基础设置,并理解小程序的目录结构。
这个系列我们将以天气预报小程序为实战项目,涵盖从环境搭建到项目上线的完整流程。无论你是完全没有接触过小程序开发的新手,还是想要系统学习小程序开发的开发者,这篇文章都将为你提供详细的指导。
让我们打开微信开发者工具,开始我们的第一个小程序项目吧!


文章目录

    • 一、开发环境准备
      • 1. 下载并安装微信开发者工具
      • 2. 注册小程序账号
    • 二、创建第一个小程序项目
      • 1. 打开开发者工具并登录
      • 2. 创建新项目
      • 3. 项目初始化配置
    • 三、开发者工具界面介绍
      • 1. 编辑器区域(左侧)
      • 2. 预览区域(中间)
      • 3. 工具栏(右侧)
    • 四、基础文件配置详解
      • 1. 项目配置文件 (project.config.json)
      • 2. 全局配置文件 (app.json)
      • 3. 全局样式文件 (app.wxss)
    • 五、创建项目所需页面
      • 1. 在app.json中添加页面路径
      • 2. 使用开发者工具创建页面
    • 六、首次编译和预览
      • 1. 编译项目
      • 2. 在手机上预览
    • 七、项目结构优化
      • 1. 创建资源目录
      • 2. 整理后的项目结构
    • 八、总结与下一步计划


一、开发环境准备

1. 下载并安装微信开发者工具

  1. 访问官网下载:打开微信官方开发者工具下载页面
  2. 选择对应版本:根据你的操作系统(Windows/Mac)下载最新版本
  3. 安装开发者工具:双击安装包,按照提示完成安装

2. 注册小程序账号

  1. 访问注册页面:打开微信公众平台
  2. 点击立即注册:选择"小程序"类型
  3. 填写注册信息:按照要求填写邮箱、密码等信息
  4. 邮箱激活:登录邮箱点击激活链接
  5. 完善信息:填写主体信息和管理员信息

💡 提示:个人开发者也可以注册小程序,但部分功能可能会受限

二、创建第一个小程序项目

1. 打开开发者工具并登录

安装完成后,首次打开微信开发者工具:

# 在Windows上可以在开始菜单搜索"微信开发者工具"
# 在Mac上可以在应用程序中找到并打开

打开后会看到登录界面,使用你的小程序账号扫码登录。

2. 创建新项目

登录成功后,点击"+"号或"新建项目"按钮:

  1. 项目设置
    • 项目名称:WeatherApp(天气预报应用)
    • 目录:选择你想要存放项目的文件夹路径
    • AppID:填写你注册的小程序AppID(重要!)
    • 后端服务:选择"不使用云服务"(初学阶段)
    • 开发模式:选择"小程序"
  2. 模板选择
    • 选择"JavaScript-基础模板"
    • 不建议选择"快速启动模板",因为我们从零开始学习

3. 项目初始化配置

点击"新建"后,开发者工具会自动生成基础项目结构:

WeatherApp/
├── app.js
├── app.json
├── app.wxss
├── pages/
│   └── index/
│       ├── index.js
│       ├── index.json
│       ├── index.wxml
│       └── index.wxss
├── utils/
│   └── util.js
└── project.config.json

三、开发者工具界面介绍

成功创建项目后,你会看到开发者工具的主界面:

1. 编辑器区域(左侧)

  • 文件树:显示项目所有文件
  • 代码编辑器:支持语法高亮、代码提示
  • 文件标签:可以同时打开多个文件编辑

2. 预览区域(中间)

  • 模拟器:实时预览小程序效果
  • 调试器:查看Console、Network等信息

3. 工具栏(右侧)

  • 编译:手动触发重新编译
  • 预览:生成二维码在手机上预览
  • 上传:上传代码到微信平台
  • 切后台:模拟小程序进入后台

四、基础文件配置详解

1. 项目配置文件 (project.config.json)

这个文件保存了项目的个性化配置:

{"description": "项目配置文件","setting": {"urlCheck": false,"es6": true,"postcss": true,"minified": true,"newFeature": true},"compileType": "miniprogram","libVersion": "2.19.4","appid": "你的AppID","projectname": "WeatherApp","debugOptions": {"hidedInDevtools": []}
}

2. 全局配置文件 (app.json)

这是小程序最重要的配置文件:

{"pages": ["pages/index/index"],"window": {"backgroundTextStyle": "light","navigationBarBackgroundColor": "#667eea","navigationBarTitleText": "天气预报","navigationBarTextStyle": "white","backgroundColor": "#f5f5f5","enablePullDownRefresh": true},"style": "v2","sitemapLocation": "sitemap.json"
}

3. 全局样式文件 (app.wxss)

添加一些基础样式:

/* 基础样式重置 */
page {font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Helvetica, 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', SimSun, sans-serif;background-color: #f5f5f5;color: #333;line-height: 1.6;
}/* 容器样式 */
.container {padding: 20rpx;min-height: 100vh;
}

五、创建项目所需页面

现在让我们为天气预报应用创建所需的页面结构:

1. 在app.json中添加页面路径

修改app.json文件,添加所有需要的页面:

{"pages": ["pages/index/index","pages/citySelect/citySelect","pages/forecast/forecast","pages/settings/settings"],// ... 其他配置保持不变
}

2. 使用开发者工具创建页面

手动创建(推荐学习使用)

  1. pages目录右键 → 新建文件夹
  2. 命名为citySelect
  3. citySelect文件夹中右键 → 新建文件
  4. 创建四个文件:citySelect.js, citySelect.json, citySelect.wxml, citySelect.wxss
  5. 多天气预报页和设置页也是一样的创建法

每个页面都需要四个文件: jsjsonwxmlwxss

六、首次编译和预览

1. 编译项目

点击工具栏的"编译"按钮(或使用快捷键 Ctrl/Cmd + B),开发者工具会自动编译并在模拟器中显示效果。

2. 在手机上预览

  1. 点击"预览"按钮
  2. 使用微信扫描生成的二维码
  3. 在手机上查看实际效果

七、项目结构优化

1. 创建资源目录

在项目根目录创建以下目录:

mkdir assets         # 图片和图标资源
mkdir components      # 自定义组件

2. 整理后的项目结构

WeatherApp/
├── assets                         
│   ├── icons                       # 图标文件
│   ├── images                      # 图片文件
├── components                      # 自定义组件
│   ├── tabBar                      # 底部导航栏页 (后续文章详细介绍)
│   │   ├── tabBar.js               # 页面逻辑 
│   │   ├── tabBar.json             # 页面配置
│   │   ├── tabBar.wxml             # 页面结构
│   │   ├── tabBar.wxss             # 页面样式
├── pages
│   ├── index                       # 首页 (后续文章详细介绍)
│   │   ├── index.js                # 首页逻辑
│   │   ├── index.json              # 页面配置
│   │   ├── index.wxml              # 页面结构
│   │   └── index.wxss              # 页面样式
│   ├── citySelect                  # 城市选择页  (后续文章详细介绍)
│   │   ├── citySelect.js           # 城市选择页逻辑
│   │   ├── citySelect.json         # 页面配置
│   │   ├── citySelect.wxml         # 页面结构
│   │   └── citySelect.wxss         # 页面样式
│   ├── forecast                    # 多天气预报页 (后续文章详细介绍)
│   │   ├── forecast.js             # 多天气预报页逻辑
│   │   ├── forecast.json           # 页面配置
│   │   ├── forecast.wxml           # 页面结构
│   │   └── forecast.wxss           # 页面样式
│   └── settings                    # 设置页 (后续文章详细介绍)
│       ├── settings.js             # 设置页逻辑
│       ├── settings.json           # 页面配置
│       ├── settings.wxml           # 页面结构
│       └── settings.wxss           # 页面样式
└── utils               
|   └── util.js                     # 工具函数库
|   └── api.js                      # API请求
├── app.js                          # 小程序入口文件
├── app.json                        # 全局配置文件
├── app.wxss                        # 全局样式文件
└── project.config.json

项目功能模块:

  • 首页(index): 展示当前城市天气概况和基本信息
  • 城市选择(citySelect): 允许用户搜索和切换城市
  • 天气预报(forecast): 显示未来多天的详细天气预报
  • 设置(settings): 提供主题切换、通知设置等个性化选项

各文件功能说明:

  • app.js: 小程序入口文件,包含全局逻辑和应用生命周期函数
  • app.json: 全局配置文件,设置页面路径、窗口样式等
  • app.wxss: 全局样式文件,定义公共样式
  • pages/: 页面目录,每个页面有独立的js、json、wxml和wxss文件
  • utils/: 工具类目录,存放公共工具函数

这样的结构清晰地将全局文件、页面文件和工具文件分开,便于维护和开发。

八、总结与下一步计划

通过本文,我们完成了:

环境搭建:安装微信开发者工具并登录账号
项目创建:创建了WeatherApp天气预报小程序项目
基础配置:配置了项目设置和全局样式
页面结构:创建了所需的页面文件结构
首次预览:成功编译并在模拟器中查看效果

开发小贴士

  • 经常使用Ctrl/Cmd + S保存文件
  • 关注控制台的错误提示
  • 使用模拟器的调试功能排查问题

下一篇预告:在下一篇文章中,我将详细介绍首页页面(index)的开发,实现:

  • 调用天气API获取数据
  • 设计美观的天气展示界面
  • 下拉刷新功能

如果你觉得文章有用,请点赞👍 + 收藏⭐ + 关注👀 你的支持是我持续创作的最大动力!
📚 系列文章目录
本系列文章将带你从零开始开发一个完整的天气预报小程序,以下是各章节的详细内容:

  • 使用开发者工具创建天气预报项目(本文)
  • 首页实现与和风天气API整合
  • 城市选择页面开发实战
  • 10天天气预报详情页面实现
  • 设置页面与个性化功能

🔗 相关推荐
有关小程序的更多内容,请看:

  • 微信小程序:从基础到进阶的全面指南 (详细版)
  • 微信小程序终极指南:注册与开发全流程详解

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/94075.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/94075.shtml
英文地址,请注明出处:http://en.pswp.cn/web/94075.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【链表 - LeetCode】24. 两两交换链表中的节点

24. 两两交换链表中的节点 - 力扣(LeetCode) 题解: - 迭代 首先是直接遍历的做法,这里注意调整指针指向的顺序。 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* List…

爬虫基础学习-链接协议分析,熟悉相关函数

1、urlparse:(python标准库中的一个模块,解析和操作url)标准的url链接格式:scheme://netloc/path;params?query#fragmentscheme(协议) http or https netloc(网络位置) …

kkfileview预览Excel文件去掉左上角的跳转HTML预览、打印按钮

上篇说了使用nginx代理kkfile预览文件,但是又发现个新问题,预览其他文件时都正常,但是预览.xlsx格式的时候,在左上角会有【跳转HTML预览】【打印】两个按钮,如下所示:这篇就来说一下如何去掉。首先这个跟kk…

阿里开源新AI code工具:qoder功能介绍

下载地址: https://qoder.com/ 文档地址: https://docs.qoder.com/ 文章目录1. AI 编码发展趋势2. 真实世界软件开发的挑战3. 我们的方法3.1. 透明度3.1.1. 知识可见性3.1.2. 执行透明度3.2. 增强上下文工程3.3. 规范驱动与任务委托3.3.1. 聊天模式&…

什么是短视频矩阵系统企业立项功能源码开发,支持OEM

短视频矩阵系统企业立项功能源码开发解析在短视频行业蓬勃发展的当下,企业纷纷布局短视频矩阵,以实现多平台、多账号的协同运营。而企业立项作为短视频矩阵项目启动的关键环节,其高效、规范的管理直接影响项目的推进效率与成果。为此&#xf…

当GitHub宕机时,我们如何协作?

问题背景与影响 GitHub作为主流代码托管平台的依赖现状宕机对分布式团队、CI/CD流水线、紧急修复的影响案例其他类似平台(GitLab、Bitbucket)的潜在连带风险 本地与离线协作方案 利用Git分布式特性:本地仓库继续提交,恢复后同步搭…

【会议跟踪】Model-Based Systems Engineering (MBSE) in Practice 2025

会议主旨与议题 会议宣传链接:https://www.sei.cmu.edu/events/mbse-in-practice/ 本次会议将于2025年8月21日位美国弗吉尼亚州阿灵顿(五角大楼所在地)举行。本次会议主旨为 MBSE in Practice: Bridging the Gap Between Theory and Success(2025)。随着软件定义系统日趋…

浏览器的渲染流程:从 HTML 到屏幕显示

在我们日常使用浏览器浏览网页时,往往忽略了浏览器背后复杂的渲染过程。从输入 URL 到页面最终显示在屏幕上,浏览器需要经过一系列精心设计的步骤。 浏览器渲染的整体流程浏览器的渲染流程可以大致分为两个主要部分:网络 和 渲染。当用户在地…

FastMCP 客户端服务器通信示例:从入门到实战(STDIO 传输)

引言 在现代分布式系统和AI应用中,模型上下文协议(MCP)扮演着重要角色,它负责协调客户端与服务器之间的通信,尤其是在需要频繁交互的场景中。本文将介绍如何使用FastMCP库快速实现客户端与服务器之间的通信&#xff0c…

宝可梦肉鸽 PC/手机双端 多种存档 全闪光 无限金币 全宝可梦解锁 免安装中文版

网盘链接: 宝可梦肉鸽 免安装中文版 名称:宝可梦肉鸽 PC/手机双端 多种存档 全闪光 无限金币 全宝可梦解锁 免安装中文版 描述:宝可梦肉鸽修改版是一款非常受欢迎的口袋妖怪系列,游戏拥有许多独特的妖怪和玩法。在游戏中&#…

Linux 下的网络编程

1、目的实现不同主机上进程间的通信。2、问题主机与主机之间在物理层面必须互联互通。进程与进程在软件层面必须互联互通。IP地址:计算机的软件地址,用来标识计算机设备。MAC地址:计算机的硬件地址(固定)。网络的端口号…

Go语言在边缘计算中的网络编程实践:从入门到精通

一、引言 在数字化浪潮席卷全球的今天,边缘计算如同一股清流,正在重新定义我们对网络架构的理解。想象一下,当你在自动驾驶汽车中需要毫秒级响应,或者在偏远工厂中需要实时处理传感器数据时,传统的云计算模式就像是&qu…

ASPICE过程能力确定——度量框架

🚗【汽车人必看】ASPICE能力评估核心:度量框架全解析|90%工程师都搞不懂的评分规则!🔍 为什么你的ASPICE评估总卡在L2?——揭秘6大能力等级背后的评分逻辑,附提升秘籍!🔥…

机器学习在量化中的应用

一、核心应用场景在因子研究中,scikit-learn 主要解决以下几类问题:因子预处理与标准化:StandardScaler, RobustScaler因子有效性分析:LinearRegression (IC分析)降维与因子合成:PCA, FactorAnalysis机器学习预测模型&…

RabbitMQ:消息转化器

目录一、基本概述二、如何处理一、基本概述 在RabbitMQ中,一般情况下传递字符串会被正常解析,如果传递的是一个Object类型或者是一个对象类型的时候,RabbitMQ会将其自动转化为字节码发送,这不利于我们的读取个解析。 二、如何处…

【Protues仿真】基于AT89C52单片机的LCD液晶显示屏显示控制

目录 1 LM016L液晶显示模块 1.1 基本参数 1.2 引脚定义 1.3硬件连接示例(AT89C52) 1.4 常用指令集(HD44780 子集) 1.5 常见问题与注意事项 1.8 结论 2 LM016L液晶显示模块控制电路原理图 3 LM016L液晶显示模块控制程序 …

孤独伤感视频素材哪里找?分享热门伤感短视频素材资源网站

你是不是也经常在抖音上刷到很火的伤感视频,那么伤感视频素材都在哪里可以下载呢?作为一名从业多年的视频剪辑师,今天就跟大家聊聊那些可以下载伤感素材高清无水印的网站,如果你也在苦苦找寻伤感素材,快来看看吧&#…

笔记本怎么才能更快散热?

一、“物理降温法”​▪️ 垫高高!别让底部 “窒息”​笔记本底部全是进风口,放床上 / 沙发上会被堵住!垫点东西拉开底部空间,高度 1-2cm。​▪️ 给风扇 “松绑”​按「CtrlShiftEsc」打开任务管理器,点 “进程”&…

电机驱动实现插补算法之脉冲和方向接收(以stm32主控为例)

一、方案 A(推荐):编码器模式吃脉冲(TI1 STEP,TI2 DIR) 核心思路 把定时器设为 Encoder TI1 模式:每个 STEP 上升沿计一次,在那个沿的瞬间用 TI2(DIR)的电…

[特殊字符] 潜入深渊:探索 Linux 内核源码的奇幻之旅与生存指南

文章目录 朋友们,敲黑板!!!(超级重要)我们今天聊点硬核的——不是普通的代码,而是驱动了整个数字世界心跳的Linux内核源代码!它藏在哪?就在那个传奇仓库:torv…