浅谈小程序开发 [2018年]

      一、问题背景

随着App市场趋近于饱和,大部分用户已经养成了使用习惯,加上开发和推广新的App的成本高,使得开发新的App很难在市场上生存。在此背景下,小程序应运而生,2016年,张小龙的微信团队首次推出了微信小程序。 小程序无需安装卸载,随时可用的优势,再加上国内最流行的社交软件之一——微信的普及,使得微信小程序的访问量和日活用户大幅增长。在微信小程序之后,2018年3月,小米、中兴、华为、联想、魅族等十家手机厂商一起推出了快应用,其本质上也是小程序。可以预见,在未来几年,小程序将是互联网发展的重要趋势之一。这里之所以使用小程序进行在线申办功能开发,就是为了方便群众更好、更快捷地进行办事。 

二、什么是小程序

小程序是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或者搜一下即可打开应用。也体现了“用完即走”的理念。小程序能够实现消息通知、线下扫码、公众号关联等七大功能。其中,通过公众号关联,用户可以实现公众号与小程序之间相互跳转。

小程序依附微信生态,使得其传播的速度更快,推广的成本更低。目前,微信客户端更新至 6.5.15 及以上版本,或Android 微信客户端更新至6.5.13 及以上版本,都已经增加了在微信搜索框下方就能找到小程序的快捷入口,这无疑给小程序提供了更多的曝光机会。

以上是小程序的特点和功能优势,下面就小程序开发中的关键步骤进行阐述。

三、小程序开发的关键步骤

一个小程序从开发到发布,整个生命周期主要有以下四个方面:注册账号、安装开发工具、创建小程序、审核发布。如下图:

     1、注册账号

开发小程序的第一步,就是需要在微信公众平台(https://mp.weixin.qq.com/wxopen/waregister?action=step1)注册一个小程序账号,通过这个账号你就可以管理你的小程序。在小程序的管理平台,你可以管理你的小程序的权限,查看数据报表,发布小程序等操作。

     2、安装开发工具

前往开发者工具下载页面(https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html),根据自己的操作系统下载对应的安装包进行安装,有关开发者工具更详细的介绍可以查看 《开发者工具介绍》(https://developers.weixin.qq.com/miniprogram/dev/devtools/devtools.html)。

     3、创建小程序

在安装完成之后,打开小程序开发者工具,使用微信扫码登录开发者工具,选择小程序项目,然后依次填入项目目录、AppID、项目名称 。接着,点击确定按钮,就得到了你的第一个小程序了。点击微信开发者工具顶部菜单【编译】按钮,就可以预览你的第一个小程序。你也可以点击【预览】按钮,通过微信的扫一扫在手机上体验你的第一个小程序。

 

小程序的目录结构主要划分为两大类,一类是小程序框架文件,位于项目根目录下,包括小程序配置app.json、页面配置app.json、全局样式app.wxss、工具配置project.config.json。另一类是小程序页面文件,位于pages目录下,主要由4个部分组成,分别为以.json为后缀的配置文件,.wxml为后缀的模板文件,wxss为后缀的样式文件,.js为后缀的逻辑文件。

     4、审核发布

小程序的上线发布,主要需要经过三个步骤,分别是微信认证、完善小程序信息、版本发布。

这里重点谈一下小程序的版本发布,小程序的版本发布主要包括以下三个方面:上传代码、提交审核、发布。

(1)上传代码

点击开发者工具顶部操作栏的上传按钮,填写版本号以及项目备注,需要注意的是,这里版本号以及项目备注是为了方便管理员检查版本使用的,开发者可以根据自己的实际要求来填写这两个字段。

(2)提交审核

为了保证小程序的质量,以及符合相关的规范,小程序的发布是需要经过审核的。在开发者工具中上传了小程序代码之后,登录“小程序管理后台-开发管理-开发版本”找到提交上传的版本。在开发版本的列表中,点击“提交审核” ,按照页面提示,填写相关的信息,即可以将小程序提交审核。

需要注意的是,请开发者严格测试了版本之后,再提交审核,过多的审核不通过,可能会影响后续的时间。

(3)发布

审核通过之后,管理员的微信中会收到小程序通过审核的通知,此时登录“小程序管理后台-开发管理-审核版本”中可以看到通过审核的版本。代码审核通过后,需要开发者手动点击发布,小程序才会发布到线上提供服务。

四、经验总结

在小程序的开发过程中,会遇到各种各样的问题,这里就个人在开发中遇到的两个较为典型的问题进行介绍。

我们知道,有时候用户在点击【上一步】或【下一步】操作按钮时,很希望系统能够自动帮我们把之前填写过的内容自动填充进来,避免再次填写的重复操作。那么,如何在小程序中实现这个功能需求呢?为了解决这个问题,我通过上网查询相关资料,发现小程序有提供数据缓存的机制。只要通过调用对应的API,就可以实现将已填写的信息保存到缓存中,在需要时再从缓存中读取,这样就很好的解决了数据自动填充的需求了。

在开发中遇到的第二个问题,就是表单的校验问题。几乎所有的表单,都离不开校验。小程序的表单组件没有自带的校验功能,所以只能自己裸写验证规则,但是针对每一个组件单独写验证规则,代码的重复的部分会比较多。后来在同事的帮助下,找到了官方社区开发的WxValidate插件,它是参考 jQuery Validate 封装的,为小程序表单提供了一套常用的验证规则。就这样,通过引入第三方插件,很好地解决了表单验证的问题。

以上是本人在开发过程遇到过的两个较为典型的问题和解决方法,当然还遇到过其他很多问题,这里就不一一介绍了。据了解,目前除了微信推出了小程序,支付宝也已推出了小程序,在未来几年里,小程序很有可能会是互联网发展的一个重要的方向,相关的技术也会日趋完善,让我们一起期待小程序为我们的生活带来更多的便捷吧!

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

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

相关文章

7.1下周黄金非农数据是否会影响美联储七月暂停加息?

近期有哪些消息面影响黄金走势?下周黄金多空该如何研判? ​黄金消息面解析:周五(6月30日),现货黄金价格收盘上涨,盘中一度升破1920美元关口。美国疲软的个人消费支出推动了美国国债收益率的下降,从而导致美…

[问题解决] ubuntu 18.04 GPU驱动安装

删除当前显卡驱动[参考] sudo apt-get purge nvidia* 查看推荐驱动 sudo ubuntu-drivers devices 安装对应驱动 sudo apt install nvidia-driver-530 验证安装是否成功:nvidia-smi

微软Surface Book 2终止更新日前推迟,将与Surface Pro 6同日结束服务

近日有消息称,微软公布了旗下Surface系列设备的更新支持终止日期,并且包括新发布的设备和前代产品。 早在本月23日,微软就为Surface Book 2推送了新的固件,主要提升了Surface Dock 2的稳定性,及其他一些安全更新。  …

Django项目之mysql数据库连接和表的创建

数据库连接 首先,确保我们已经生成了一个基本的Django项目文件,目录结构如下: 具体搭建流程参考链接:https://blog.csdn.net/David_house/article/details/131188889?spm1001.2014.3001.5502找到项目下的settings文件&#xff…

基于Tars高并发IM系统的设计与实现-基础篇

基于Tars高并发IM系统的设计与实现–基础篇 作者简介 兰怀玉 毕业于中央民族大学计算机专业 先后供职国内外多家公司软件研发设计岗位,有丰富的软件研发经验。 从事IM领域设计研发十余年,先后领衔多个IM通讯系统设计与研发发,拥有丰富的IM系…

three.js中的点对象(Point)和点材质(PointsMaterial)

一、点对象和点材质基本介绍 1. 点材质(PointsMaterial): 点材质用于渲染点对象,它决定了点的颜色、透明度等属性。 常用属性有: color: 点的颜色,默认为白色。opacity: 点的透明度,默认为1…

Vue工程创建及应用

🙈作者简介:练习时长两年半的Java up主 🙉个人主页:程序员老茶 🙊 ps:点赞👍是免费的,却可以让写博客的作者开兴好久好久😎 📚系列专栏:Java全栈,…

成为优秀领导者必备的五个能力要素

领导力是现代社会不可或缺的一部分。在企业、政府、学术机构等各个领域中,领导力都是影响组织成功的关键因素之一。而要成为一名优秀的领导者,需要具备一系列重要的能力与素质。 本文将简单介绍领导力的五要素,要进一步学习领导力&#xff0…

七、云尚办公-Activiti入门

云尚办公系统:Activiti入门 B站直达【为尚硅谷点赞】: https://www.bilibili.com/video/BV1Ya411S7aT 本博文以课程相关为主发布,并且融入了自己的一些看法以及对学习过程中遇见的问题给出相关的解决方法。一起学习一起进步!!&am…

selenium三大等待

目录 前言: 一、强制等待:sleep(秒) 二、智能等待:显性等待 三、智能等待:隐形等待 前言: 在Selenium自动化测试中,等待是非常重要的一部分,它能够确保在需要时等待页面或元素的加载完成或…

Grafana嵌入iframe,websoket连接报错400或403(nginx代理)

1、custom.ini配置文件修改allowed_origins* 2、 nginx中增加配置,如下:

网络犯罪分子在新的代理劫持活动中劫持脆弱的SSH服务器

一个活跃的金融活动针对的是脆弱的SSH服务器,以隐蔽地将它们纳入一个代理网络。 "Akamai研究员Allen West在周四的一份报告中说:"这是一个活跃的活动,攻击者利用SSH进行远程访问,运行恶意脚本,隐蔽地将受害…