微信小程序框架-全面详解(学习总结---从入门到深化)
创始人
2024-04-20 21:51:33

小程序与普通网页开发的区别

小程序的主要开发语言是 JavaScript ,小程序的开发同普通的网页 开发相比有很大的相似性。对于前端开发者而言,从网页开发迁移 到小程序的开发成本并不高,但是二者还是多少有些许区别的,例如:

 

 

体验小程序

开发者可使用微信客户端(6.7.2 及以上版本)扫码下方小程序码,体验小程序

 

微信小程序账号申请 

开发小程序的第一步,你需要拥有一个小程序帐号,通过这个帐号 你就可以管理你的小程序

申请帐号

进入小程序注册页根据指引填写信息和提交相应的资料,就可以拥 有自己的小程序帐号

注册地址:https://mp.weixin.qq.com/cgi-bin/wx?token=&lan g=zh_CN

 第一步:添加账号信息

 第二步:激活邮箱

 第三步:信息登记

温馨提示

这里我们能选择的是个人和企业,如果是个人注册选择个人 (我们这里选择个人),如果是企业注册选择企业

 

 第四步:主体信息登录

温馨提示

用户信息与微信注册用户信息保持一致

 

 第五步:进入控制台

单独进入管理平台地址:https://mp.weixin.qq.com/

 

 第六步:获取AppID

注意:目前对我们有用的是“开发管理 - 开发设置 - AppID”

 小程序的 AppID 相当于小程序平台的一个身份证,后续你会在很多 地方要用到 AppID

微信小程序开发者工具 

为了帮助开发者简单和高效地开发和调试微信小程序,我们推出了 微信开发者工具 使用小程序开发者工具,开发者可以完成小程序开发调试、代码查 看和编辑、小程序预览和发布等功能。

下载安装 

开发者工具下载地址

https://developers.weixin.qq.com/miniprogram/dev/devtoo ls/download.html

 安装如一般软件一样,并没有特别之处

创建项目

基础开发,我们要选择“JavaScript-基础模板”

 开发者工具说明

在微信开发者工具中,我们可以编写代码的同时查看运行结果和调试问题

 小程序目录结构

小程序包含一个描述整体程序的 app 和多个描述各自页面的 page

 描述整体的 app

 描述各自页面的 page

一个小程序页面由四个文件组成,分别是

 温馨提示

为了方便开发者减少配置项,描述页面的四个文件必须具有相同的路径与文件名

 1. 在微信小程序项目结构中, app.json 的作用是:小程序公共配置

 全局配置_Pages

 用于指定小程序由哪些页面组成,每一项都对应一个页面的路径 (含文件名) 信息。文件名不需要写文件后缀,框架会自动去寻找 对应位置的 .json , .js , .wxml , .wxss 四个文件进行处理

温馨提示

未指定 entryPagePath 时,数组的第一项代表小程序的初始页面 (首页)

 Pages配置

小程序中新增/减少页面,都需要对 app.json 文件中 pages 数组进行修改

默认项目存在两个页面: index logs ,对应的 app.jsonpages 属性的配置:

"pages": ["pages/index/index","pages/logs/logs"
]

增加页面 news 之后,修改 app.json 文件中的 pages 属性(其实页面创建出来,也会自动加载)

"pages": ["pages/news/news","pages/index/index","pages/logs/logs"
],

修改 pages/news/news.wxml 文件为: 

news页面

entryPagePath

指定小程序的默认启动路径(首页),在 app.json 配置文件中增加 entryPagePath

{"entryPagePath": "pages/index/index","pages": ["pages/news/news","pages/index/index","pages/logs/logs"],
}

 快捷生成页面方案

在 app.json 文件中的 pages 中直接添加路径,可以自动生成页面 例如:我们增加 about 页面路由,可以自动生成 about 页面

{"entryPagePath": "pages/index/index","pages": ["pages/news/news","pages/index/index","pages/logs/logs","pages/about/about"  ],
}

 1. 在微信小程序的 app.json 文件配置中 entryPagePath 的作用是:

指定小程序的默认启动路径(首页)

 全局配置_window

 window 用于设置小程序的状态栏、导航条、标题、窗口背景色等等

 常用属性

 修改 app.json 文件中的 window 属性配置

"window": {"navigationBarBackgroundColor": "#000000","navigationBarTextStyle": "white","navigationBarTitleText": "第一个小程序","backgroundColor": "#000000","backgroundTextStyle": "light","enablePullDownRefresh":true,"onReachBottomDistance":50
},

 1. 在小程序的 window 配置中,那个是开启下拉刷新的属性:enablePullDownRefresh

全局配置_tabBar 

 如果小程序是一个多 tab 应用(客户端窗口的底部或顶部有 tab 栏 可以切换页面),可以通过 tabBar 配置 tab 切换时显示的对应页面

常用属性

 温馨提示

其中 list 接受一个数组,只能配置最少 2 个、最多 5 个 tab

 List属性说明

属性类型必 填说明
pagePathstring页面路径,必须在 pages 中先定义
textstringtab 上按钮文字
iconPathstring图片路径,icon 大小限制为 40kb,建议尺寸为 81px * 81px,不支持网络图片。 当 position 为 top 时,不显 示 icon。
selectedIconPathstring选中时的图片路径,icon 大小限制为 40kb,建议尺寸为 81px * 81px,不支持网络图片。 当 position 为 top 时,不显示 icon。

修改 app.json 配置文件,增加 tabBar 属性配置

"tabBar": {"list": [{"pagePath": "pages/index/index","text": "首页","iconPath":"./images/home.png","selectedIconPath":"./images/home_select.png"}, {"pagePath": "pages/news/news","text": "新闻","iconPath": "./images/news.png","selectedIconPath": "./images/news_select.png"}]
},

 1. 在小程序的 tabbar 配置中,那个属性可以配置页面路径:pagePath

全局配置_tabBar属性 

 如果小程序是一个多 tab 应用(客户端窗口的底部或顶部有 tab 栏 可以切换页面),可以通过 tabBar 配置项指定 tab 栏的表现,以 及 tab 切换时显示的对应页面。

 

 配置 app.json 文件中的 tabBar 的属性

"tabBar": {"color":"#999999","selectedColor":"#ff0000","backgroundColor":"#fff","borderStyle":"black","position":"bottom","list": [{"pagePath": "pages/index/index","text": "首页","iconPath":"./images/home.png","selectedIconPath":"./images/home_select.png"}, {"pagePath": "pages/news/news","text": "新闻","iconPath": "./images/news.png","selectedIconPath": "./images/news_select.png"}]
},

1. 小程序的 tabbar 配置中,那个属性可以配置 tabbar 显示在顶部还是底部:position

 全局配置_常用其他配置

 小程序根目录下的 app.json 文件用来对微信小程序进行其他全局配 置。文件内容为一个 JSON 对象

 style

微信客户端 7.0 开始,UI 界面进行了大改版。小程序也进行了基础 组件的样式升级。app.json 中配置 "style": "v2" 可表明启用新版的组件样式

 sitemapLocation

指明 sitemap.json的位置;默认为 'sitemap.json' 即在 app.json 同 级目录下名字的 sitemap.json 文件

networkTimeout 

各类网络请求的超时时间,单位均为毫秒

 debug

可以在开发者工具中开启 debug 模式,在开发者工具的控制台面 板,调试信息以 info 的形式给出,其信息有 Page 的注册,页面路 由,数据更新,事件触发等。可以帮助开发者快速定位一些常见的 问题

debugOptions 

小程序调试相关配置项

 FPS 面板

为了便于开发者调试渲染层的交互性能,小程序基础库提供了选项 开启 FPS 面板,开发者可以实时查看渲染层帧率

 开启方式

"debugOptions": {"enableFPSPanel": true
}

温馨提示

必须在真机上才能看到

 permission

小程序接口权限相关设置

例如:小程序定位设置,配置如下

"permission": {"scope.userLocation": {"desc": "你的位置信息将用于小程序位置接口的效果展示"}
}

app.json 文件配置如下

{"entryPagePath": "pages/index/index","pages": ["pages/news/news","pages/index/index","pages/logs/logs","pages/about/about"],"window": {"navigationBarBackgroundColor": "#000000","navigationBarTextStyle": "white","navigationBarTitleText": "第一个小程序","backgroundColor": "#000000","backgroundTextStyle": "light","enablePullDownRefresh": true,"onReachBottomDistance": 50},"tabBar": {"color": "#999999","selectedColor": "#ff0000","backgroundColor": "#fff","borderStyle": "black","position": "bottom","list": [{"pagePath": "pages/index/index","text": "首页","iconPath": "./images/home.png","selectedIconPath": "./images/home_select.png"}, {"pagePath": "pages/news/news","text": "新闻","iconPath": "./images/news.png","selectedIconPath": "./images/news_select.png"}]},"style": "v2","sitemapLocation": "sitemap.json","networkTimeout": {"request": 10000,"downloadFile": 10000},"debug": true,"permission": {"scope.userLocation": {"enablePullDownRefresh": true,"onReachBottomDistance": 50},"tabBar": {"color": "#999999","selectedColor": "#ff0000","backgroundColor": "#fff","borderStyle": "black","position": "bottom","list": [{"pagePath": "pages/index/index","text": "首页","iconPath": "./images/home.png","selectedIconPath": "./images/home_select.png"}, {"pagePath": "pages/news/news","text": "新闻","iconPath": "./images/news.png","selectedIconPath": "./images/news_select.png"}]},"style": "v2","sitemapLocation": "sitemap.json","networkTimeout": {"request": 10000,"downloadFile": 10000},"debug": true,"permission": {"scope.userLocation": {"desc": "你的位置信息将用于小程序位置接口的效果展示"}},"debugOptions": {"enableFPSPanel": true}
}

1. 小程序全局配置中,那个属性可以开启 debug 调试模式:debug

单页面配置 

 app.json 中的部分配置,也支持对单个页面进行配置 可以在页面对应的 文件.json 文件来对本页面的表现进行配置

配置项 

 页面 文件.json 文件配置

虽然配置与 app.json 基本一致,但是注意,不在需要添加 window 作为父级

{"usingComponents": {},"navigationBarBackgroundColor": "#ffffff","navigationBarTextStyle": "black","navigationBarTitleText": "第二个页面","backgroundColor": "#ffffff","backgroundTextStyle": "light","enablePullDownRefresh": true,"onReachBottomDistance": 50,"style":"v2"
}

相关内容

热门资讯

苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...