百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

前端|微信小程序的框架及工具(微信小程序前端框架ui选型)

ccwgpt 2024-09-23 04:41 72 浏览 0 评论

前言:本文涉及小程序知识面很广很干货,各种阶段的读者来读都会找到你所需要的东西。

微信小程序的框架及工具的使用,是进行小程序开发的第一步,首先必须要理解小程序的框架配置包括app.json配置,App()函数的使用、page()函数的使用,数据如何绑定到页面上、条件判断和列表渲染、模板的使用、import引用模板,以及include引用文件,同时还要学会工具的使用,包括Console面板、sourse面板、network面板、storage面板、Appdata面板、Wxml面板以及Sensor面板的使用

1.1app.json配置是开发小程序必会的一个功能配置,它有五个主要功能:决定页面文件路径,配置窗口的表现,配置tab标签导航,设置网络超时时间以及配置debug模式。

1.1.2app.json文件可设置配置窗口的表现,包括导航栏背景色、导航栏标题颜色、导航栏标题文字内容、窗口的背景色、下拉背景字体、loading图的样式以及是否开启下拉刷新设置。这些功能的配置都放在window这个对象里,具体代码如下。

1.1.3配置tab标签导航

  • 微信小程序配置tab标签导航,可以配置底部标签导航和顶部标签导航,
  • 配置顶部标签导航(具体代码如下)
  • 界面效果图如下图所示

1.1.4设置网络超时时间

  • 微信小程序设置网络超时时间是通过networkTimeout对象来设置的,可以设置网络请求的超时时间、WebSocket的超时时间、uploadFile文件上传超时时间和downloadFile文件下载超时时间
  • request:wx.request的超时时间,单位毫秒,默认为60000。
  • connectSocket:wx.connectSock的超时时间,单位毫秒,默认为60000。
  • uploadFile:wx.uploadFlie的超时时间,单位毫秒,默认为60000。
  • downloadFile:wx.downloadFile的超时时间,单位毫秒默认为6000。

1.1.5配置debug模式

配置debug模式是在开发者工具的控制台面板,调试信息并以info的形式给出,其信息有page的注册、页面路由、数据更新和时间触发。可以帮助开发者快速定位一些常见的问题,具体代码如下:

  • (1)开启debug模式,控制台面板调试信息如下
  • (2)没有开启debug模式,控制台的调试信息
  • 显而易见,开启了debug模式,调试信息会更详细全面,进而更方便我们去在程序开发的过程中调试。微信小程序正式运行则需要把debug模式关闭。

1.2App函数的使用

App()函数用来注册一个微信小程序,它被放置在app.js全局文件里,可以接受object对象参数,同时还可以指定微信小程序的生命周期函数、全局函数和全局数据。具体代码如下所示

  • (1)onLaunch:生命周期函数。监听小程序初始化,当小程序初始化完成时,会触发onLaunch(全局只触发一次)。
  • (2)onShow:生命周期函数。监听小程序显示,当小程序启动,或从后台进入前台显示时,会触发onShow。
  • (3)onHide:生命周期函数。监听小程序隐藏,当小程序从前台进入后台时,会触发onHide。
  • (4)onError:错误监听函数,当小程序发生脚本错误,或者API调用失败时,会触发onError并带上错误信息。
  • (5)其他:开发者可以添加任意的函数或数据到object参数中,用this可以访问

1.3Page()函数的使用

App()函数可用来注册一个微信小程序,同时提供生命周期函数、全局函数和全局数据,而Page函数则用来注册一个具体的页面,它在页面文件夹的js文件里,可以接受一个object参数,可以指定页面的初始数据、生命周期函数、事件处理函数等。

1.3.1初始化数据

  • 在Page()函数的data对象里可以初始化页面要用到的函数,data会以JSON的形式由逻辑层传至渲染层,所以其数据必须是可以转化成JSON格式:字符串、数字、布尔值、对象或数组。假如界面需要姓名和性别的值,这时就可以通过data来传递数据,具体代码如下所示
  • 界面效果图如下:

1.3.2生命周期函数

在Page()函数里也提供了一些生命周期函数,如下所示。

  • (1)onLoad:生命周期函数。监听页面加载,一个页面只会调用一次。
  • (2)onReady:生命周期函数。监听页面初次渲染完成,一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互。
  • (3)onShow:生命周期函数。监听页面显示,每次打开页面都会调用一次。
  • (4)onHide:生命周期函数。监听页面隐藏,当navigateTo或底部tab切换时调用。
  • (5)onUnload:生命周期函数。监听页面卸载,当redirectTo或navigateBack时调用。

1.3.3相关事件函数

在Page()函数里也提供了一些常用的函数,比如下拉刷新、页面转发事件函数。

  • (1)onPullDownRefresh:下拉刷新。
  • 监听用户下拉刷新事件,需要在config的window选项中开启enablePullDownRefresh。当处理完数据刷新后,wx.stopPullDownRefresh可以停止在当前页面的下拉刷新。
  • (2)onShareAppMessage:用户转发。
  • 只要有定义了此事件的处理函数,右上角菜单才会显示"转发"按钮。用户点击转发按钮的时候会调用,此事件需要return一个Object,用于自定义转发内容。

1.4数据绑定

WXML页面的动态数据都是来自js文件Page的data,数据绑定就是通过双大括号{{}}将变量包起来,在WXML页面里将数据值显示出来。代码示例如下

  • (1)组件属性绑定是将data里的数据绑定到微信小程序的组件上,示例代码如下所示。
  • (2)控制属性绑定用来进行if语句条件判断,如果满足条件,则执行,否则不执行,
  • 示例代码如下所示
  • (3)关键字绑定常用于组件的一些关键字,像复选框组件一样,checked关键字如果等于true,则代表选中复选框,false则代表不选中复选框,示例代码如下所示:

1.5wx:if条件判断

  • 1.微信小程序的条件判断分为单个组件的条件判断和多个组件的条件判断
  • 在微信小程序里,可以将wx:if="{{condition}}"应用到某个组件上,用{{condition}}"来判断是否需要渲染该代码模块,示例代码如下图所示
  • 使用wx:elif和wx:else来添加一个else模块
  • 2.block wx:if判断多个组件
  • 如果想一次性控制多个组件标签,可以使用<block/>标签将多个组件包装起来,并在上面使用wx:if控制属性,下列为具体代码:
  • <block>并不是一个组件,它仅仅是一个包装元素,不会在任何页面渲染,只接受控制属性。

1.6wx:for列表渲染

列表渲染的使用也分为单个组件和多个组件,类似条件判断的使用。

1.wx:for控制属性绑定一个数组

  • 我们设定index为键值对,item为变量名,示例代码如下所示:

2.block wx:for列表渲染多个组件

  • 代码如下所示:

1.7定义和使用模板

小程序为了解决页面里重复代码的问题,提供了模板机制,把一些可以重复的代码放置在模板里进行定义代码片段,然后在不同的地方调用。

1.定义模板

  • 建立一个存放模板的页面文件,比如将文件名命为template.wxml。template模板是通过name属性来标识的,示例代码如下所示。
  • 这样就定义好了以head为名称的模板,然后就可以在其他页面进行使用了。

2.使用模板

  • 定义了head为名称的模板,通过import引入到要使用模板的页面,在WXML页面文件里,使用is属性来查找head这个模板并进行使用,然后将模板所需要的data传入它所需要传入userName的值,然后就可以在页面模板里渲染出来,示例代码如下所示

1.8import引入模板

import引用可以将有模板功能的页面文件引入到要使用模板的页面,也就是说,要使用模板功能,就必须先通过import引入模板文件,然后才能找到模板进行使用。

1.import引入模板

  • 在template.wxml中定义了一个叫person的template,示例代码如下所示:
  • 在index.wxml中引用了template.wxml,就可以使用person模板,示例代码如下所示:
  • 只有通过import引入模板文件,才能使用模板功能。

2.import引用作用域

  • import有作用域的概念,即只会import目标文件中定义的template,而不会import目标文件import的template。
  • 比如在second.wxml中可以使用first.wxml里的模板,因为second.wxml文件通过import引入first.wxml文件模板;在third文件中可以使用second里的模板,因为third.wxml文件通过import引入second.wxml文件模板,但是不可以使用first.wxml文件模板,因为没有引入first.wxml文件。

1.9include引用文件

  • include的引用功能是引用除外的全部代码,相当于把引用文件的代码复制过来。
  • 比如每个页面都有一样的导航菜单和版权信息,这时就可以把导航菜单代码和版权信息代码都放置在一个单独的文件中,然后就可以在页面中直接使用了,并不需要重复的编写代码,同时能保持代码、页面展示的一致性。

接下来技术哥给大家介绍开发小程序最最实用的几大面板

Console面板

  • Console面板可以用来在开发过程中输入调试信息的,如果代码编写有误,则会输出相应的错误
  • 除了可以输出错误信息,同时也允许输入代码

Sources面板

  • Sources面板可以用来显示当前项目的脚本文件,它包括两部分脚本文件:一部分是开发者自己编写的脚本文件,另一部分是工具根据开发者的脚本进行包装的脚本文件,开发者的代码都会被包裹在define函数中,并且对于Page代码,在尾部会有require的主动调用

Network面板

  • Network面板可以用来显示调用哪些文件以及这些文件调用的状态,可以看到所有调用的文件信息,包括文件名称、路径、大小、调用状态、时间等信息,包括文件的名称、路径、大小、调用状态、时间等信息
  • 单击某一个调用的文件,会查看到HTTP的请求,包括请求的URL、请求的方式(GET/POST)、请求的状态(200代表成功)、IP地址等

Storage面板

  • Storage面板可用来管理本地缓存数据的地方,可以使用wx.setStorage或者wx.setStorageSync这两个API将数据缓存起来,在Storage面板中就可以查看
  • 在Storage面板里可以对缓存数据进行管理,既可以删除缓存的本地数据,也可以在Storage面板里通过key-value的形式添加缓存数据

Appdata面板

  • Appdata面板可用来显示当前页面当时当刻的数据,并且可以查看本页面用到了哪些数据
  • 除了显示当前页面的数据,还可以对当前页面数据进行编辑,修改当前页面的数据

Wxml面板

  • Wxml可用来显示当前页面的代码以及展示的数据
  • 同时还可以编辑代码的样式,方便进行界面的布局和样式的编写

Sensor模板

  • Sensor面板可用来选择模拟地理位置
  • 除了可以模拟地理位置,还可以模拟移动设备的表现,用于调试重力感应API

今天"技术哥"给大家介绍了小程序的框架及工具大家一定不要死记硬背,重在理解,如果忘记了返回来再看一遍,这样效率是最高的!"技术哥"接下来还会给大家带来更深入更详细的小程序教程,请大家继续关注"技术哥",做一个持续学习者!

相关推荐

2025南通中考作文解读之四:结构框架

文题《继续走,迈向远方》结构框架:清晰叙事,层层递进示例结构:1.开头(点题):用环境描写或比喻引出“走”与“远方”,如“人生如一条长路,每一次驻足后,都需要继续走,才能看见更美的风景”。2.中间...

高中数学的知识框架(高中数学知识框架图第三章)

高中数学的知识框架可以划分为多个核心板块,每个板块包含具体的知识点与内容,以下为详细的知识框架结构:基础知识1.集合与逻辑用语:涵盖集合的概念、表示方式、性质、运算,以及命题、四种命题关系、充分条件...

决定人生的六大框架(决定人生的要素)

45岁的自己混到今天,其实是失败的,要是早点意识到影响人生的六大框架,也不至于今天的模样啊!排第一的是环境,不是有句话叫人是环境的产物,身边的环境包括身边的人和事,这些都会对一个人产生深远的影响。其次...

2023年想考过一级造价师土建计量,看这30个知识点(三)

第二章工程构造考点一:工业建筑分类[考频分析]★★★1.按厂房层数分:(1)单层厂房;(2)多层厂房;(3)混合层数厂房。2.按工业建筑用途分:(1)生产厂房;(2)生产辅助厂房;(3)动力用厂房;(...

一级建造师习题集-建筑工程实务(第一章-第二节-2)

建筑工程管理与实务题库(章节练习)第一章建筑工程技术第二节结构设计与构造二、结构设计1.常见建筑结构体系中,适用建筑高度最小的是()。A.框架结构体系B.剪力墙结构体系C.框架-剪力墙结构体系D...

冷眼读书丨多塔斜拉桥,这么美又这么牛

”重大交通基础设施的建设是国民经济和社会发展的先导,是交通运输行业新技术集中应用与创新的综合体现。多塔斜拉桥因跨越能力强、地形适应性强、造型优美等特点,备受桥梁设计者的青睐,在未来跨越海峡工程中将得...

2021一级造价师土建计量知识点:民用建筑分类

2021造价考试备考开始了,学霸君为大家整理了一级造价师备考所用的知识点,希望对大家的备考道路上有所帮助。  民用建筑分类  一、按层数和高度分  1.住宅建筑按层数分类:1~3层为低层住宅,4~6层...

6个建筑结构常见类型,你都知道吗?

建筑结构是建筑物中支承荷载(作用)起骨架作用的体系。结构是由构件组成的。构件有拉(压)杆、梁、板、柱、拱、壳、薄膜、索、基础等。常见的建筑结构类型有6种:砖混结构、砖木结构、框架结构、钢筋混凝土结构、...

框架结构设计经验总结(框架结构设计应注意哪些问题)

1.结构设计说明主要是设计依据,抗震等级,人防等级,地基情况及承载力,防潮抗渗做法,活荷载值,材料等级,施工中的注意事项,选用详图,通用详图或节点,以及在施工图中未画出而通过说明来表达的信息。2.各...

浅谈混凝土框架结构设计(混凝土框架结构设计主要内容)

浅谈混凝土框架结构设计 摘要:结构设计是个系统的全面的工作,需要扎实的理论知识功底,灵活创新的思维和严肃认真负责的工作态度。钢筋混凝土框架结构虽然相对简单,但设计中仍有很多需要注意的问题。本文针...

2022一级建造师《建筑实务》1A412020 结构设计 精细考点整理

历年真题分布统计1A412021常用建筑结构体系和应用一、混合结构体系【2012-3】指楼盖和屋盖采用钢筋混凝土或钢木结构,而墙和柱采用砌体结构建造的房屋,大多用在住宅、办公楼、教学楼建筑中。优点:...

破土动工!这个故宫“分院”科技含量有点儿高

故宫“分院”设计图。受访者供图近日,位于北京海淀区西北旺镇的故宫北院区项目已开始破土动工,该项目也被称作故宫“分院”,筹备近十年之久。据悉,故宫本院每年展览文物的数量不到1万件,但是“分院”建成后,预...

装配式结构体系介绍(上)(装配式结构如何设计)

PC构件深化、构件之间连接节点做法等与相应装配式结构体系密切相关。本节列举目前常见的几种装配式结构体系:装配整体式混凝土剪力墙结构体系、装配整体式混凝土框架结构体系、装配整体式混凝土空腔结构体系(S...

这些不是双向抗侧结构体系(这些不是双向抗侧结构体系的特点)

双向抗侧土木吧规范对双向抗恻力结构有何规定?为何不应采用单向有墙的结构?双向抗侧土木吧1.规范对双向抗侧力结构体系的要求抗侧力体系是指抵抗水平地震作用及风荷载的结构体系。对于结构体系的布置,规范针对...

2022一级建造师《建筑实务》1A412020 结构设计 精细化考点整理

1A412021常用建筑结构体系和应用一、混合结构体系【2012-3】指楼盖和屋盖采用钢筋混凝土或钢木结构,而墙和柱采用砌体结构建造的房屋,大多用在住宅、办公楼、教学楼建筑中。优点:抗压强度高,造价...

取消回复欢迎 发表评论: