2021年最全教程!微信小程序开发详解

2021年最全教程!微信小程序开发详解一 前期准备工作 1 注册微信小程序开发者账号在官网注册页选择小程序注册即可 账号分为个人版和企业版 个人版相对于企业版注册流程更为简单和宽松 企业版注册需要支付认证费用 一般为 300 元 个人版不需要 企业版经过微信官方认证 更具有信誉度 个人版更多只是一个展示的平台 企业版可以作为一个完整的平台 个人版不可以做商业性质的小程序 但是企业版可以 个人版不可以开通微信支付 附近的小程序不显示个人版 只能通过搜索 扫码方式找到 个人版不支持快速获取微信用户的手机号 2 下载微信开发者工具微信平

一、前期准备工作

1、注册微信小程序开发者账号

强烈推荐有一定基础的同学去微信开发平台官方网站
https://developers.weixin..com/community/homepage
在这里插入图片描述

2、下载微信开发者工具

第二步,打开微信开发者工具,选择新建小程序项目,我们先不需理解AppID的概念,新建项目时选择无AppID,并取消勾选“建立普通快速启动模板”的选项。

最后一步,我们来添加必要的代码。

index.wxml的内容如下所示。

Hello World

index.js的内容如下所示。Page({})

通过编写以上短短的几行代码,微信开发者工具的模拟器界面上显示出Hello World。

二、小程序开发

新建一个初始小程序项目
在这里插入图片描述
根据项目需求建立即可,appId在官网设置里可以看到或者使用测试号进行开发(后续有了小程序账号修改对应appId即可),点击新建即可创建一个新的小程序模板。
下图为微信开发工具页面,默认左边为开发页面展示,右边上方为代码编辑区,下方为控制台,可用来调试和查看开发过程中所需信息(开发者工具也可以用来访问微信公众号页面网页,用来查看http请求或者报错信息,前提是必须拥有开发者权限)。
在这里插入图片描述



开发工具常用功能介绍

编译:点击编译即可进行编译,默认每次修改保存后都会实时编译。可以修改每次编译条件:在这里插入图片描述
真机调试:生成一个二维码,微信扫码即可真机调试(必须处在一个网络下);
版本管理:git可视化工具;
上传:如果appid为正式id,则会有上传按钮,将小程序上传到微信服务器(仅上传编译后项目,不是源代码,源代码仍需要单独保存管理)
上传后在微信小程序官网控制版本,具体流程为:
开发工具上传>官网版本管理体验版自动更新>提交体验版本审核>等待审核通过>提交审核通过版本;




小程序目录结构
在这里插入图片描述
默认目录结构如上图,分为主体部分和各个页面:
主体部分:
app.js: 小程序初始化js;
app.json: 小程序配置文件,如:导航,窗口,各页面引入;
app.wxss: 小程序公共样式;
各个页面:
Pages:各个子页面以js+json+wxml+wxss组成,方便管理,右边可快捷生成page;
小程序遵循MVC结构(Model View Controller),js为页面逻辑(C&M),wxss为页面样式,修饰wxml的DOM元素,wxml为页面机构(V),json为页面配置(具体API可见微信官方文档,可以修改此页面标题等,也充当了部分M);








App.JSON介绍

App.json为小程序较为重要的配置文件,也从充当了类似其他框架中的路由功能。在这里插入图片描述
部分字段如图所示,这里只介绍最基础常用的配置字段:
Pages:每一个子页面都需要写到这个数组里,其实就是路由引入;
Window:系统配置,包括标题,标题颜色,标题背景等(如果不设置分页面配置则默认全覆盖);
Tabbar:官方提供的导航功能,可以设置导航栏,list为导航数组,存放导航项、color为字体颜色、selectedcolor为选中颜色、backgroundcolor为背景颜色;
App.js介绍
在这里插入图片描述
此图为简单的微信登录获取openid的例子,获取到对应id自行与用户绑定;
也可自定义全局函数。







globaldata为全局变量
如果要使用请在对应page.js引入:const app = getApp();
WXML,WXSS,JS
WXML等同于html,需要注意的是元素名全部为微信新定义的,需要注意的是不存在传统的div、span、p等元素,取而代之的是view,text等,部分元素与html名字相同,但是用法不同,需要自行前往官网文档查看;


WXSS等同于CSS,具体无太大变化,仅需注意目前不支持less或者sass,如果坚持使用less和sass需要使用vscode下载插件进行开发,后续转为wxss即可;

JS类似VUE的结构

路由方式
在这里插入图片描述
需要注意:
在这里插入图片描述
在这里插入图片描述



三、常见问题和解决方法

1、在当前页面如何修改其他页面数据?
var page=getCurrentPages();
page[0].data.btn=true;
该函数返回一个当前页面栈,从中找到对应页面即可;


2、为什么我想切换到主页,使用wx.navigateTo不生效?
可能是配置了tabbar,tabbar页面只能用switchTab跳转;

3、如何修改当前页面title?
在对应page.json中修改,示例:
{

“usingComponents”: {},
“navigationBarBackgroundColor”: “#ffffff”,
“navigationBarTextStyle”: “black”,
“navigationBarTitleText”: “快乐大抽奖”,
“backgroundColor”: “#eeeeee”,
“backgroundTextStyle”: “light”







4、小程序页面栈最多10层

5、redirectTo关闭当前页面跳转,navigateto是当前页面保存到栈跳转,首页跳转建议使用navigateto

6、小程序审核问题
小程序审核需要1-7天完成,一年一次加急审核机会(工作日2小时以内审核完成)。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/204239.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月19日 下午8:40
下一篇 2026年3月19日 下午8:41


相关推荐

  • 随摘

    随摘对于自己想要什么 自己要最清楚 别人的意见并不是那么重要 很多人总是常常被别人的意见所影响 亲戚的意见 朋友的意见 同事的意见 问题是 你究竟是要过谁的一生 人的一生不是父母一生的续集 也不是儿女一生的前传 更不是朋友一生的外篇 只有你自己对自己的一生负责 别人无法也负不起这个责任 自己做的决定 至少到最后 自己没什么可后悔 对于大多数正常智力的人来说 所做的决定没有大的对错 无论怎么样的选择

    2026年3月16日
    1
  • 如何用chkdsk修复磁盘_chkdsk发现磁盘大写表损坏

    如何用chkdsk修复磁盘_chkdsk发现磁盘大写表损坏chkdsk简单的说就是用来检查磁盘的,也是一种简单的修复命令,很多时候我们的电脑经常会提示用chkdsk修复磁盘,那么如何使用chkdsk命令呢,接下来告诉你!首先,win+r 快速启动

    2022年8月5日
    99
  • js清除浏览器缓存的几种方法(项目总结)「建议收藏」

    js清除浏览器缓存的几种方法(项目总结)「建议收藏」以前很少关注这方面的问题,直达我们的技术经理找我们说要换框架,为什么换框架呢,因为缓存的问题,原来的项目是用版本号作为刷新的依据的。因为微信公众号上有这样一个机制,使用版本好的话,有时做不到及时刷新,所以就用了vue.js,因为它有这样的功能就是如果某个文件里面的数据改变了,那么vue.js就会把这个文件的名字也相应的改掉,所以缓存里面的东西就用不了了,这样就做到了及时刷新,向后台请求数据。…

    2022年7月18日
    41
  • netty服务端 JVM优化[通俗易懂]

    netty服务端 JVM优化[通俗易懂]java-jar-server-Xms4G-Xmx4G-XX:NewSize=3584m-XX:PermSize=64m-XX:SurvivorRatio=1-XX:+UseParallelGC-XX:-UseAdaptiveSizePolicy这是我的linux服务端,针对netty的配置硬件配置是Intel(R)Core(TM)i3-21203.30G…

    2022年5月24日
    43
  • android WebView总结

    android WebView总结

    2021年12月17日
    48
  • AD原理图编译ERROR:GND contains Output Pin and Power Pin objects

    AD原理图编译ERROR:GND contains Output Pin and Power Pin objectsAltiumdesign 系列 GNDcontainsO 浅论 0 欧电阻用处在画一块 L298N 芯片驱动舵机电路时 原理图编译出现了以下两个 error 1 GNDcontainsO

    2026年3月26日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号