上一期我们介绍了什么是小程序,小程序的概念,小程序的发展历程,小程序的核心和开发流程,以及小程序开发跟普通网页开发的区别,更是体验了一下小程序的页面,接下来我们开始制作小程序
使用浏览器打开 https://mp.weixin.qq.com/ 网址,点击右上角的“立即注册”即可进入到小程序开发账号的注册流程
开始选择要注册账号的类型,这里我们选择小程序
开始填写邮箱、密码
进入邮箱激活
进行主体信息登记,主体类型选择个人,然后填写身份证等信息
注册小程序开发者账号,这个APPID在创建小程序项目的时候需要用到
首先来介绍一下开发者工具,小程序开发者工具是微信官方提供的一款用于开发和调试小程序的实用工具。它支持Windows和Mac两种操作系统,使得开发者能够高效地开发和调试小程序。下面我们来看看它都有哪些功能
说了这么多,都等不及了吧!我们现在就开始安装吧!
下载开发者工具 https://developers.weixin.qq.com/miniprogram/dev/devtools/stable.html 访问该连接进行下载,根据自己本地的版本进行下载
因为我自己的MAC,关于Windows的安装,我直接放到下面
下载完毕之后开发安装
扫码进行登录,使用绑定的手机号对应的微信号扫码
然后在微信上点击登录
设置外观和代理
创建一个小程序项目
点击预览可以在真机上查看效果
开发者工具的组成部分
小程序官方建议把所有小程序的页面,都存放在 pages 目录中,以单独的文件夹存在。
JSON 是一种数据格式,在实际开发中,JSON 总是以配置文件的形式出现。小程序项目中也不例外:通过不同的 .json 配置文件,可以对小程序项目进行不同级别的配置。
文件名 | 位置 | 作用 |
---|---|---|
app.json | 项目根目录 | 小程序的全局配置文件,定义了小程序的生命周期函数、全局变量、页面路径、窗口表现、底部导航栏、网络超时时间等全局配置。 |
页面名.json | 每个页面目录下 | 小程序的页面配置文件,用于定义单个页面的配置,如窗口表现(导航栏样式、背景色等)、是否允许下拉刷新、上拉触底距离等。这些配置会覆盖全局配置文件app.json中相同的配置项。 |
project.config.json | 项目根目录 | 小程序项目的配置文件,用于定义项目的编译设置、开发者设置等,如项目的AppID、项目名称、小程序的根目录、云函数的根目录等。这些配置信息有助于开发者在不同环境中保持项目的一致性。 |
sitemap.json | 项目的任意位置(通过app.json中的sitemapLocation字段指定) | 小程序的搜索配置文件,用于配置小程序的页面是否允许被微信索引,以提高小程序在搜索引擎中的可见度。开发者可以通过配置sitemap.json文件来指定哪些页面可以被索引,哪些页面需要被禁止索引。 |
每个JSON配置文件都有其特定的作用,它们共同构成了小程序运行的配置环境。通过合理配置这些文件,开发者可以确保小程序在不同环境下都能正确运行,并呈现出最佳的用户体验。
app.json 是当前小程序的全局配置,包括了小程序的所有页面路径、窗口外观、界面表现、底部 tab 等。 让我们来看下app.json文件中的配置都有哪些
{
"pages": [
"pages/index/index"
],
"window": {
"navigationBarTextStyle": "black",
"navigationStyle": "custom"
},
"style": "v2",
"renderer": "skyline",
"rendererOptions": {
"skyline": {
"defaultDisplayBlock": true,
"defaultContentBox": true,
"tagNameStyleIsolation": "legacy",
"disableABTest": true,
"sdkVersionBegin": "3.0.0",
"sdkVersionEnd": "15.255.255"
}
},
"componentFramework": "glass-easel",
"sitemapLocation": "sitemap.json",
"lazyCodeLoading": "requiredComponents"
}
project.config.json 是项目配置文件,用来记录我们对小程序开发工具所做的个性化配置
{
"appid": "wxdcxxxxxx",
"compileType": "miniprogram",
"libVersion": "3.7.0",
"packOptions": {
"ignore": [],
"include": []
},
"setting": {
"coverView": true,
"es6": true,
"postcss": true,
"minified": true,
"enhance": true,
"showShadowRootInWxmlPanel": true,
"packNpmRelationList": [],
"babelSetting": {
"ignore": [],
"disablePlugins": [],
"outputPath": ""
}
},
"condition": {},
"editorSetting": {
"tabIndent": "insertSpaces",
"tabSize": 4
}
}
微信现已开放小程序内搜索,效果类似于 PC 网页的 SEO。sitemap.json 文件用来配置小程序页面是否允许微信索引。 当开发者允许微信索引时,微信会通过爬虫的形式,为小程序的页面内容建立索引。当用户的搜索关键字和页面的索引匹配成功的时候,小程序的页面将可能展示在搜索结果中。
{
"desc": "关于本文件的更多信息,请参考文档 https://developers.weixin.qq.com/miniprogram/dev/framework/sitemap.html",
"rules": [{
"action": "allow",
"page": "*"
}]
}
注意:sitemap 的索引提示是默认开启的,如需要关闭 sitemap 的索引提示,可在小程序项目配置文件 project.config.json 的 setting 中配置字段 checkSiteMap 为 false
小程序中的每一个页面,可以使用 .json 文件来对本页面的窗口外观进行配置,页面中的配置项会覆盖 app.json 的 window 中相同的配置项。例如:
只需要在 app.json -> pages 中新增页面的存放路径,小程序开发者工具即可帮我们自动创建对应的页面文件,
只需要调整 app.json -> pages 数组中页面路径的前后顺序,即可修改项目的首页。小程序会把排在第一位的页面,当作项目首页进行渲染,
<text>
和<Text>
是不同的标签,后者会导致编译错误。<view>
、<button>
、<text>
等,这些标签与HTML中的<div>
、<button>
、<span>
等标签类似,但具有小程序特定的属性和行为。对比项 | WXML | HTML |
---|---|---|
定义与用途 | 微信小程序中用于构建页面结构的标记语言 | 用于构建网页的标记语言 |
平台限制 | 主要用于微信小程序平台 | 可在各种Web浏览器上运行 |
标签与属性 | 使用微信小程序特定的标签和属性,如<view>、<text>、wx:if等 | 使用预定义的HTML标签和属性,如<div>、<span>、class等 |
数据绑定 | 支持Mustache语法(双大括号{{}})进行数据绑定 | 本身不支持数据绑定,需配合JavaScript实现 |
样式表 | 使用WXSS(微信小程序样式表)定义样式 | 使用CSS(层叠样式表)定义样式 |
组件化 | 支持组件化开发,组件具有独立的WXML、WXSS和JavaScript文件 | 也支持组件化,但通常通过HTML、CSS和JavaScript文件组合实现 |
MVVM模式 | 支持MVVM(Model-View-ViewModel)模式,有助于减少DOM操作 | 本身不支持MVVM模式,需通过JavaScript和DOM操作实现界面与数据的交互 |
性能优化 | 微信小程序提供了丰富的性能优化工具和技术支持 | 性能优化依赖于开发者的经验和技能,如减少HTTP请求、优化DOM操作等 |
生态系统 | 拥有微信小程序特定的生态系统和开发工具 | 拥有广泛的生态系统和各种工具和框架可用 |
示例 | <view>{{message}}</view>(数据绑定示例) | <div>{{/* 无法直接进行数据绑定 */}}</div>(说明HTML本身不支持直接数据绑定) |
对比项 | WXML | CSS |
---|---|---|
定义与用途 | 微信小程序中用于描述页面结构的标记语言 | 用于描述HTML或XML等文件样式的计算机语言 |
应用平台 | 专用于微信小程序开发 | 广泛应用于Web开发,适用于各种HTML文档 |
标签与属性 | 使用微信小程序特有的标签,如<view>、<text>等 | 不涉及标签定义,主要关注样式和布局 |
数据绑定 | 支持Mustache语法({{}})进行数据绑定 | 不支持数据绑定,需通过JavaScript实现 |
样式定义 | 配合WXSS(微信小程序样式表)使用 | 独立使用,定义元素的样式和布局 |
尺寸单位 | WXSS中新增了rpx尺寸单位,适应不同屏幕尺寸 | 使用px、em、rem等尺寸单位 |
选择器 | 不直接涉及选择器(但WXSS可使用部分CSS选择器) | 支持丰富的选择器,如类选择器、ID选择器、后代选择器等 |
样式应用 | 样式通过WXSS文件或内联样式应用于WXML元素 | 样式通过CSS文件、内联样式或<style>标签应用于HTML元素 |
组件化 | 支持组件化开发,但样式需通过WXSS单独定义 | 样式可应用于任何HTML元素,组件化需通过JavaScript和HTML实现 |
响应式设计 | 通过WXSS的rpx单位等实现响应式设计 | 通过媒体查询、弹性盒模型等实现响应式设计 |
生态系统 | 与微信小程序开发框架紧密集成 | 与Web开发框架和库(如Bootstrap、Foundation)集成 |
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有