关于微信小程序相关内容

微信小程序相关内容

1.简单描述下微信⼩程序的相关⽂件类型

首先,你在app.json里面的pages下面配置一个地址,它就会自动生成一个文件夹,写在最前面的就是默认的主页面.
在这里插入图片描述
自动生成的文件夹里面主要有四个⽂件类型,如下:

  • 第一个是 .js 它是用来实现逻辑处理和网络请求的,就比如说请求后台接口数据
  • 第二个是 .json 它是用来设置小程序的,比如说页面注册,页面标题以及tabBar。tabBar设置就是我们常用的页面下面的那种大的路由
  • 第三个是 .wxml 是框架设计的⼀套标签语⾔,结合基础组件、事件系统,可以构建出⻚⾯的结构。内部主要是微信⾃⼰定义的⼀套组件,其实也就是相当于html页面。
  • 第四个是 .wxss 它是⼀套样式语⾔,⽤于描述 WXML 的组件样式。相当于css
    在这里插入图片描述
  • 微信小程序里面还必须要有app.json这个文件,如果没有这个⽂件,项⽬⽆法运⾏,因为微信框架把这个作为配置⽂件⼊⼝,整个⼩程序的全局配置。包括⻚⾯注册,⽹络设置,以及⼩程序的window背景⾊,配置导航条样式,配置默认标题。都在这个文件里面
  • 还必须要有app.js这个文件,没有这个文件的话会报错,以后可以在这个⽂件中监听并处理⼩程序的⽣命周期函数、声明全局变量。

2.微信⼩程序中有哪些参数传值的⽅法?

  1. 给HTML元素添加 data-* 属性来传递我们需要的值,然后通过 e.currentTarget.dataset 或 onload
    的param 参数获取。但 data- 名称不能有大写字母, 不可以存放对象
  2. 设置id 的方法标识来传值通过 e.currentTarget.id 获取设置的id的值,然后通过设置全局对象的方式来传递数值
  3. 在 navigato r中添加参数传值

3.如何提高微信小程序的应用速度?

  1. 提⾼⻚⾯加载速度(压缩静态⽂件,使⽤精灵图,路由分包)
  2. ⽤户⾏为预测
  3. 减少默认data的⼤⼩,在不操作视图的时候,使⽤this.data.n=10这种赋值⽅式代替this.setData({n:10})

4.简述微信⼩程序原理(⼩程序是如何在微信 App ⾥运⾏的)

微信把小程序代码解析成了原生app,并展示出来。这样做的⽬的是为了提供和原⽣ App 性能相当的⽤户体验。当⽤户点击打开⼀个微信⼩程序,App 从微信服务器下载这个⼩程序并分析 app.json 得到应⽤程序的配置信息(导航栏,窗⼝样式,包含的⻚⾯列表等)
加载并运⾏ app.js并显示 app.json ⾥配置的第⼀个⻚⾯

5.⼩程序与原⽣App比较哪个好?

  1. ⽆需下载,通过搜索和扫⼀扫就可以打开。
  2. 良好的⽤户体验:打开速度快。
  3. 开发成本要⽐App要低。
  4. 安卓上可以添加到桌⾯,与原⽣App差不多。
  5. 为⽤户提供良好的安全保障。⼩程序的发布,微信拥有⼀套严格的审查流程,不能通过审查的⼩程序是⽆法发布到线上的
  6. 小程序除了拥有公众号的低开发成本、低获客成本低以及无需下载等优势,在 服务请求延时与用户使用体验是都得到了较大幅度 的提升,使得其能够承载跟 复杂的服务功能以及使用户获得更好的用户体验。

6.怎么封装微信⼩程序的数据请求

在监听页面加载的生命周期函数里面

onLoad: function (options) {
       wx.request({
          url: '后台接口地址',
          data: {},
          method: 'GET',
          success: (result)=>{
            this.setData({
                lik:result.data.data          //把后台数据赋值给data里面定义的一个空对象
            })  
          },
          fail: ()=>{},
          complete: ()=>{}
    })
  },

7.小程序页面的生命周期

data:⻚⾯的初始数据
onLoad:⽣命周期回调—监听⻚⾯加载
onShow:⽣命周期回调—监听⻚⾯显示;
onReady:⽣命周期回调—监听⻚⾯初次渲染完成
onHide:⽣命周期回调—监听⻚⾯隐藏
onUnload:⽣命周期回调—监听⻚⾯卸载
onPullDownRefresh:监听⽤户下拉动作
onReachBottom:⻚⾯上拉触底事件的处理函数
onShareAppMessage:⽤户点击右上⻆转发
onPageScroll:⻚⾯滚动触发事件的处理函数
onResize:⻚⾯尺⼨改变时触发,详⻅ 响应显示区域变化
onTabItemTap:当前是 tab ⻚时,点击 tab 时触发

8.简述一下wx.navigateTo(),wx.redirectTo(),wx.switchTab(),wx.navigateBack(), wx.reLaunch()的区别?

  1. wx.switchTab:用这个函数的前提是,你的app.json下要添加tabBar并且有list(里面的属性一般不能少于2个,但是也不能多于5个),也就是说你的小程序要有底部导航栏。它用法比较简单,就是关闭其他所有非 tabBar 页面,跳转到 tabBar 页面。提供的参数有:url(常用的),success,fail,complete
  2. wx.reLaunch: 意思就是跳转到小程序内的某个页面。
  3. wx.redirectTo:它跟wx.navigateTo函数有很多相似的地方。wx.redirectTo(Object object)是用在关闭当前页面,跳转到应用内的某个页面,但是不允许跳转到 tabbar 页面(这个算是它跟wx.switchTab最大的区别吧)。
  4. wx.navigateTo:wx.navigateTo(Object object)也是不能跳到 tabbar 页面,保留当前页面,跳转到应用内的某个页面。
  5. wx.navigateBack:当有底部导航栏时,我们可以通过wx.switchTab跳转到相应的导航栏里。假如我把要跳转过去的底部导航栏去掉后,原本页面的数据要想传过去,这时候如果用wx.navigateBack这个函数的话,可通过 getCurrentPages 获取当前的页面栈,决定需要返回几层。
    它们这几个的参数都是object类型
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值