0530-3433334

网站建设 APP开发 小程序

知识

分享你我感悟

您当前位置>首页 >> 知识 >> 小程序

前端开发必学技能:微信小程序开发全攻略

发表时间:2024-07-12 09:38:37

文章来源:炫佑科技

浏览次数:126

菏泽炫佑科技 菏泽炫佑小程序开发 菏泽炫佑app制作 炫佑科技

前端开发必学技能:微信小程序开发全攻略

1.为什么要学习小程序开发?

对于前端开发来说,微信小程序凭借其简单、快速、开发成本低、用户流量巨大等特点,已经成为前端开发工程师必备的技能。

2.开发准备:

(1)有人开玩笑说,你甚至不需要学习 Vue小程序:

微信小程序虽然是腾讯自己开发的,但是核心思想和Vue等框架是一样的~

(2)善于收藏精美的小组件:“我们不生产代码,我们只是代码搬运工。”善于寻找自己想要的组件,并将它们巧妙而优雅地组装成大项目,也是程序员的基本功。

如何找到你想要的小程序demo?文章*后我会推荐小程序资源给你,里面有很多大牛的项目。

卷起袖子开始工作

1.注册小程序账号并下载IDE

1.在官网注册并下载IDE。

2.官方文档一直都是*好的学习资料。

注意:

(1)注册账号后会有一个appid,新建项目时需要填写appid,否则很多功能无法使用,比如预览、上传代码等。

(2)如果你已经注册了微信公众号,请注意,微信公众号和小程序是两个账号,appID也是不同的,小程序开发必须使用小程序的appID。

2.小程序框架及运行机制介绍

1、我们创建一个“普通快速启动模板”,整个项目目录如下:

2.app.js

整个项目的启动文件主要有三大功能,比如注释掉的方法,就是用于浏览器缓存中数据的存储和获取;登录成功回调的使用;获取用户信息。

就是为整个项目定义全局变量或者常量。

3.app.json

整个项目的配置文件,比如注册页面,配置tab页,设置整个项目的风格,页面标题等。

!注意:小程序启动时默认首页是app.json中pages里的**页。

4.页面

小程序的页面组件有多个子文件夹,例如快速启动模板有index、logs两个页面。

5.打开索引目录

可以看到有三个文件,其实和我们针对web开发文件是一一对应的。

index.wxml对应index.html;

index.wxss对应的是index.css;

index.js是js文件。

一般我们还会给每个页面组件添加一个.json文件作为该页面组件的配置文件,用于设置页面标题等功能。

6.双击index.js文件

(1)变量 app = ();

导入整个项目的app.js文件,获取期间公共变量等信息。

如果要使用util.js工具库中某个方法,就在util.js中导出,然后在需要的页面中获取。

(2)比如我们要获取豆瓣电影,就需要调用豆瓣的API;我们先在app.js中定义

然后在index.js中使用app..来获取该值。

当然,当页面需要这些常量时你也可以采用硬编码值,但是为了整个项目的维护,建议将这样的公共参数写在配置文件中。

(3)接下来在整个页面中({}),**个数据是这个页面的组件内部的数据,这些数据会渲染到页面的wxml文件中,类似vue、react啦~

通过修改数据,驱动页面渲染

(4)一些生命周期函数

比如()、()、()等,监控页面加载、页面初始渲染、页面显示、页面隐藏等。

可以查看官方API获取更多信息,*常用的是()方法和()方法(设置页面共享的信息)

7.wxml模板的使用。

例如本项目的电影页面,采用*小星级组件wxml作为模板,从星级到电影到电影列表,一层层嵌套。

在star-.wxml页面中写入name属性;然后在导入的时候通过name获取

8.常用wxml标签

view、text、icon、block、-view等,这些标签可以直接查看官网文档

3.小程序框架、页面及上线注意事项

1.整个框架中需要注意的几点

(1)整个wxml页面的*底层标签是oh。

(2)每个页面顶部导航栏的颜色react开发微信小程序,title,都是在本页面的json中配置的,若没有配置,则取app.json中总的配置。

(3)注释不能用json写,否则会报错。

(4)路由相关

1)如果使用wx.跳转到tab页,除了在app.json中注册pages页面外,还需要注册tab页才能生效。

注意:标签页*多为 5 个,也就是顶部或底部的菜单*多为 5 个。其他页面只能通过其他路由方式打开。

2)跳转到非tab页,比如欢迎页,电影详情页,城市选择页;在app.json中注册后就不能再注册了,否则无法跳转。

3)跳转。新打开的页面左上角没有返回按钮。这个项目只用过一次,在切换城市的时候。

(5)页面间传递参数

参数写在重定向的URL中,然后对方页面接收方法中的参数,传递并获取id如下

(6)使用以数据开头的自定义属性

比如我们在wxml中怎么写

可以通过如下方式获取click事件对象:var = event...;

注意:大写字母会转换为小写字母,带有 _ 符号的字母会转换为驼峰式字母。

(7)事件对象event、event.和event.的区别:

指的是当前点击的组件,指的是捕获事件的组件。

比如在轮播组件中前端开发必学技能:微信小程序开发全攻略,应该绑定点击事件,这样就可以监听是否有任意一张图片被点击。

此时,它引用的是image(因为点击了图片),它引用的是(因为点击事件绑定在了top上)

(8)使用免费网络接口:

本项目用到了和风天气API、腾讯地图API、百度地图API、豆瓣电影API、聚合头条新闻API等,具体使用可以参考它们官网的接口文档,很详细。

注意:免费接口是有访问限制的,所以如果将此接口和别人的组件一起使用的话,*好注册一个新的key进行替换。

附上免费接口合集:

!!另外请注意,这些接口的域名必须配置为小程序的合法域名,否则无法访问。

(8)wxss有个坑,不能读取本地的资源,比如背景图片用在本地就会报错。

本地图片转为在线图片有几种方法:上传到个人网站;QQ空间相册等。

2. 切换到城市页面:

(1)首页跳转到城市切换页,由于没有关闭首页,所以切换城市返回后天气信息还是原来的。

正确的处理逻辑如下:

1)使用跳转切换城市页面,其实就是关闭所有页面,然后打开一个新页面。

2)切换到城市页面,更新公共变量中的城市信息为手动切换的城市区域,然后返回首页,触发首页重新加载。

3)获取首页城市信息时,增加判断,如果没有全局信息,则使用定位信息,如果有全局信息(比如刚才设置的),则使用全局信息。

(2)滚动返回城市列表顶部

基于-view组件的-top属性,初始值为0,滚动时值会增加;点击Back to Top设置为0即可返回顶部

3. 天气页面

(1)初始化页面,天气显示逻辑

首先调用小程序的wx.方法获取当前的经纬度,然后调用腾讯地图获取当前的城市名和县名,存放在公共变量中。

然后调用方法查询天气和空气质量。

(2)容错处理

城市名称的长度不一,有的城市名称特别长,如巴彦淖尔市,需要动态获取完整的城市名称。

有些偏远城市还没有天气信息,我们需要对返回的结果进行判断,如果没有信息的话,给用户很好的提示信息。

4. 周边地图服务页面

(1)调用百度地图各项服务,查询酒店、美食、生活服务等信息,详情请参见百度地图文档

(2)点击时,给被点击的图标添加边框。view是数据驱动的,所以用一个长度为3的数组来保存三个图标当前是否被点击的状态。

然后wxml根据数据动态添加类和边框样式。

5.豆瓣电影页面

(1)影片详情页的预览图是利用小程序自身实现的。

(2)详情页通过()方法监听用户上拉触底事件,然后发送请求继续获取数据,达到懒加载的效果。

(3)用户体验优化:在js中将整数评分,比如7分,统一改为7.0分,然后wxml模板判断评分是否为0,显示“尚未评分”。

(4)搜索完成后清空搜索框

因为该方法不能用于获取小程序中的元素,所以它只能通过数据来控制

在data中添加一个属性用于保存搜索框的内容,并与input的value属性进行绑定,当搜索完成或者点击X时,清除该变量,达到清空输入框的效果。

6. 新闻页面

(1)免费聚合头条接口只返回新闻的基本信息,不返回新闻的主体内容。

找了很多新闻界面,但是好像都没有新闻正文,如果谁知道更好的界面,欢迎留言告诉我~

(2)当然你也可以自己爬取新闻网站的数据。

炫佑科技专注互联网开发小程序开发-app开发-软件开发-网站制作等

相关案例查看更多