目录
一、页面开发部
当我们接手一个小程序开发项目时,首先要做的是根据产品文档和UI设计草案进行任务分解。
1、任务分解
任务分解也叫工作分解结构(简称WBS),就是把一个项目按照一定的原则分解,把项目分解成任务,任务再分解成工作项,然后对每个项目进行分配工作到每个人的日常活动,即:项目→任务→工作→日常活动。对于小程序等项目,我们一般可以按照以下原则划分任务:
页面开发是一个子任务
一个普通的组件包是一个子任务
p>
公共接口包是子任务
......
2、分工
提高效率的方法之一就是分工合作。一般来说,一个项目的开发需要多人参与。然后我们可以根据上面的任务分解和工作时间估计,以及每个人可以投入的时间比例,将每个任务分配给对应的人。 .
二、公共模块封装
1、封装模块
创建一个小程序项目目录,开发者工具本身已经帮我们生成了大部分目录和文件结构。另外,我们会根据需要打包的内容添加相应的存储路径。这是一个例子:
微信功能(模型)
登录,退出
获取用户头像、手机号
地理位置、地址、地图导航
读写存储
组件
搜索框
获取定位组件
业务接口(模块)
请求后端接口
身份验证权限检查
公共服务配置及参数
脱敏后的目录结构如下:
wxapp
├── app.js # 小程序的逻辑文件
├── app.json # 小程序的配置文件
├── app.wxss # 全局公共样式文件
├── components # 存放公用组件封装
├── config # 存放业务相关的配置js文件
├── images # 存放本地的图片
├── model # 存放微信功能的封装
├── module # 存放业务接口的封装,如登录接口封装
├── pages # 存放小程序的各个页面
│ ├── index # index页面
│ │ ├── index.js # 页面逻辑
│ │ ├── index.json # 页面配置
│ │ ├── index.wxml # 页面结构
│ │ └── index.wxss # 页面样式表
├── project.config.json
└── utils # 存放工具类的封装,如网络请求
└── util.js
2、使用模块
我们先看一个实际的例子,我们跳转到一个页面,当当前页面需要使用鉴权模块进行鉴权时,对业务代码进行脱敏后,只看key的调用:
// # module/auth.js
export default {
...
check: function () {
// auth check
}
...
}
在页面中使用:
// # pages/index.js
import authModel from '../../model/auth'
Page({
onLoad() {
authModel.check().then((res) => {
// do sth
}).catch((e) => {
// catch e
})
}
})
如果有前端VUE的开发经验应该对以上内容有很好的理解。其实不止是模块的封装和调用,还有页面组件的封装和调用,和VUE很像。例如,在 wxml 中插入组件的路径和名称。对应的组件标签,然后传入对应的属性,接收发出的事件方法。
我们来看一个组件封装和使用的例子。比如小程序中有一个“店铺导航”页面,里面有一个搜索框可以搜索店铺名称,业务代码脱敏后的主要流程:
├── components # 存放组件页面
│ ├── searchInput #
│ │ ├── searchInput.js #
│ │ ├── searchInput.json #
│ │ ├── searchInput.wxml #
│ │ ├── searchInput.wxss #
在页面中使用:
// # pages/index.json
{
"usingComponents": {
"searchInput": "/components/searchInput/searchInput"
},
"navigationBarTitleText": "门店导航"
}
// # pages/index.wxml
// # pages/index.js
Page({
data: {
// 输入的内容
inputStr:'',
},
// 键盘搜索
search(input) {
// do sth
this.setData({
inputStr: e.detail.detail.value
})
// go on
}
})
页面预览效果:
三、开发规范和代码审查
开发工具:可以使用微信官方开发者工具,或者VSCODE+插件等;
编码规范,省略,参考贵公司或团队的编码规范即可。
下面主要讲开发过程中需要注意的几点,比较通用,适合大部分小程序项目:
首先是图片资源,在上面的例子中,虽然我们已经创建了images目录,但是几乎没有存储图片。
一般来说,我们应该尽可能把所有的图片资源放在CDN上,然后通过网络加载。这样做的好处是显而易见的。首先是小程序的封装可以尽可能的做到。为了减肥,二是如果换了一张图片,直接刷新页面 小程序外包定制 ,不要重新发布。
只有极少数图片可以考虑放入本地图片目录,但必须满足以下条件:
页框图片,或与页面密切相关的图片;图片很小,最好只有几KB;它们长时间保持不变。
根据这些条件,可以考虑页面底部的导航栏ICON、位于上方的黑色图标等。
其次小程序软件开发,使用多个不同大小的模拟器来调试页面。小程序使用WXSS(WeiXin Style Sheets),一种样式语言,大小单位为rpx
rpx(响应像素):可以根据屏幕宽度进行适配。指定的屏幕宽度为 750rpx。比如在iPhone6上,屏幕宽度是375px,有750个物理像素,那么750rpx = 375px = 750个物理像素,1rpx = 0.5px = 1个物理像素。
建议:设计师在开发微信小程序时可以使用iPhone6作为视觉稿的标准。
即微信小程序在不同屏幕的手机上运行时,会根据屏幕的分辨率和大小自动进行转换。大多数情况下,页面的显示是正常的。不过在开发调试的时候还是要尽量切换不同大小的模拟器,看看UI、文字等有没有变形。
最后,让我们谈谈代码审查。代码审查不仅仅是检查代码的错误或合规性,我认为至少可以做两件事:
Section 一、提取和封装常用模块。对于经常使用的功能和方法,比如存储读写,在很多地方都用到了 小程序商城开发 ,但是它们的用途又有些不同。车轮无处不在,难以阅读和维护。然后我们考虑封装一个通用模块统一维护。
第二,读代码是学习别人代码的好机会; “哦,原来这个功能也可以这样实现!”体验不同的解决问题的方法是很好的。
四、微信公众平台管理
微信公众平台管理,对于小程序开发人员,经常使用以下功能:
1、添加开发者和体验者权限列表。
2、开发管理-界面权限设置:
如果小程序使用了定位、获取地址等微信功能,必须提前激活,否则提交小程序审核时会回调
3、开发管理-各类域名及接口的开发设置
4、微信提醒群:
扫码加入提醒群,微信统计小程序异常及时收到群提醒。
5、提交发布审核:
小程序从开发完成到上线,一般会经历预览->上传代码->提交审核->发布的步骤。
预览和上传代码需要在微信开发者工具中操作;提交审核和发布需要在管理后台操作。
在版本管理中,可以看到当前的版本状态,这个过程很简单,一个操作就可以上手:
五、如何提高小程序审批时效
最后说一下微信审核的时效性。一般小程序提交审核后,根据官方微信公众号,7天内完成审核。其实不需要这么长时间,一般情况下,需要2-3个小时。但有时慢的可能需要一天,快的可能需要半个小时,最快的时候不到15分钟就过去了。
在这里,我将简要分享如何尽快通过微信审核。当然,纯属胡说八道,不一定准确。微信的审核流程大致是自动机器审核+人工审核:
机器审核:小程序代码中使用的微信API是否已全部申请激活;相比之前的版本,代码量增加了多少资源,增加了多少资源文件;运行自动化测试,遍历访问每个页面小程序软件开发,生成预览图;查看业务接口是否有4XX/5XX等;微信登录、定位、支付等功能是否正常……然后给个参考评分。
人工审核:根据机器的参考分数、页面的预览图等小程序软件开发,以及提交审核时填写的发布内容,然后进行适当的人工审核。
如果机器给出的参考分数低,人工审核和审核的时间会更长,可能不止一个人,而是多人审核。
因此,为了尽快通过审核,必须尽可能满足以上所有要求。
到秦,总结经验,提供一些参考,少走一些弯路。
本站声明: 本文章内容来源于互联网,文章内容仅供用户参考。本公司不能完全保证文章内容的准备性、时效性。如果因本文章对用户造成了任何损失或者损害,本公司将不会承担任何法律责任。如果涉及到版权问题,请提交到wikins@nbyuyuan.com