小程序开发指南!
发表时间:2020-05-11 18:36
文章来源:快明科技
浏览次数:
两年前还籍籍无名的小程序,如今已经成为移动互联网的新风口。
最早小程序在微信平台上成名,手握 10 亿月活用户的微信,很快成为小程序创业者的掘金之地。巨头的嗅觉敏锐,支付宝、百度随即跟进,今日头条也开始内测小程序,几大平台纷纷出手,让小程序赛道更加拥挤,小程序生态多元化的背后,是巨头新一轮跑马圈地。
而小程序之所以这么火,是因为其自身的引流模式和盈利模式,毕竟既会技术、又知道如何将技术变现的开发人员到哪都是香饽饽。本文以四大巨头都在关注的小程序电商为例,手把手教你开发小程序版网上商城。
1. 开发小程序商城
本文将实现一款小程序版的网上商城,前端使用 JavaScript 开发小程序,后端使用 Node.js Express MySQL。首先用 SQL 脚本建立 MySQL 数据库,数据库名为 orishop。MySQL 用户名是 root,密码是 12345678,也可以使用其他用户名和密码。
下面先看一下本项目的主界面,本项目分为客户端和服务端实现,客户端涉及到轮询图、按钮、图片列表、产品展示、购物车等。
项目效果展示:
2. 轮序图设计
轮序图是在 App 首页上部显示的,用于展示商品信息,可以以一定时间自动切换商品信息。轮序图需要使用 swiper 组件,每一个轮序图 Item 需要使用 swiper-item 组件,通常每一个 Item 是一个图片,可以直接在<swiper-item>
中放置一个<image>
标签。轮序图的布局代码如下。
3. 控制轮序图
轮序图的布局代码中使用了很多变量来控制轮序图的显示,例如,indicatorDots 用来控制是否显示面板指示点,autoplay 用于控制是否自动切换图像。interval 用于控制切换时间的间隔,duration 用于控制滑动动画时长。这些变量都需要在 index.js 文件的 data 变量中设置,代码如下:
在上面的代码中 imgUrls 变量没有设置值,如果想测试轮序图,可以在小程序工程的根目录创建一个 images 目录,并且在该目录中放置若干个图像文件。为了让轮序图水平充满整个界面,需要在 index.wxss 文件中添加如下的样式代码。
4. 使用 Node.js Express 连接 MySQL 数据库
由于本项目需要使用服务端,所以在编写客户端的同时,还要编写服务端的程序,这一部分会使用 Node.js Express 连接 MySQL 数据库,在连接 MySQL 数据库之前,先要创建相关的表和视图。
本项目使用 WebStorm 开发,创建一个名为 service 的工程,接下来在 service 工程中创建 my_connect.js 文件,并输入下面的代码。
接下来测试连接数据库的代码是否正确,在 service 工程的 index.js 文件中添加如下代码。
由于 Node.js 官方提供的模块不支持操作 MySQL 数据库,所以运行本例的代码需要使用下面的命令行安装 MySQL 模块。然后在浏览器地址栏中输入 http://localhost:3000,就会在 WebStorm 的控制台看到输出结果。
5. 从 MySQL 数据库中获取要显示的轮询图信息
在这一部分仍然编写服务端代码,在小程序端需要显示轮询图,轮序图中的数据需要从 v_goods
视图获取,该视图可以得到最热,销售最好的商品信息。接下来在 mysql_connect.js
文件中添加如下代码。
接下来创建路由脚本文件 hnf.js,并添加下面的代码:
接下来在 app.js 中使用下面的代码注册 hnf 路由。
6. 动态显示轮询图
现在修改小程序端的代码,在这一部分会在小程序端通过 wx.request 函数访问上一部分创建的路由,并根据返回数据动态显示轮序图。在 index.js 文件的 onload() 函数中添加下面的代码。
7. 实现导航按钮布局
在轮序图下方是一排导航按钮,效果如下图所示:
导航按钮的布局代码需要添加到小程序工程的 index.wxml 文件中。接下来在 app.wxss 文件中添加如下的样式,其他布局也会用这个样式,所以将该样式添加到全局的 app.wxss 文件中。
在 index.wxss 文件中添加样式代码,每一个按钮占整个宽度的 11%。导航按钮也是动态显示的,数据依赖于 navigationData 变量,可以在 index.js 文件的 data 中添加如下代码来测试导航按钮的布局是否正确,记住,这只是用于测试的代码,在后面的布局会用动态的数据替换这些实验数据。
8. 动态显示导航按钮
本节会在服务端从数据库中获取导航按钮的数据,客户端会根据这些数据动态显示导航按钮。
首先切换回 WebStorm,在mysql_connect.js
文件中添加如下的方法,该方法用于获取商品类型,也就是导航按钮数据。有多少个商品类型,就显示多少个导航按钮。
在服务端创建一个 type.js 路由文件,在 app.js 文件中添加代码注册路由。切换到小程序端,在 index.js 文件的 onLoad 方法中添加下面的代码。
9. 显示最热、最新和畅销商品
在小程序首页下方通过列表显示了最新、最热和畅销商品,与轮询图显示的商品类似,此处只是为了演示列表的使用。
10. 显示商品详细信息
本节显示了显示商品详细信息的布局,首先在小程序端创建 shopinfo.wxml 布局文件,并输入下面的代码。
接下来在 shopinfo.wxss 文件中输入代码,最终显示的效果如下图所示。
总结
以上的小程序商城开发项目案例来源李宁的达人课《小程序与云开发实战 36 讲》。本文中没有展现完整的项目源代码,可以到作者的课程中下载使用;最后,要想开发牛逼的小程序,还需要有系统的课程,这样学起来一定会更加轻松 。
▼识别二维码跟我一起组队学习吧!
学完本达人课后,读者可以快速掌握小程序的核心开发技术,熟练使用小程序的各种组件以及 API 开发包括服务端的小程序,并可以开发出复杂的小程序应用。点击 阅读原文,试读了解!
本文由快明科技整理发布,如需转载请联系852657156@qq.com