小程序知识点
# 小程序跳转方法
wx.navigateTo() : 保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面
wx.redirectTo() : 关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面
wx.switchTab() : 跳转到 TabBar 页面,并关闭其他所有非 tabBar 页面
wx.navigateBack() : 关闭当前页面,返回上一页面或多级页面。可通过 getCurrentPages() 获取当前的页面栈,决定需要返回几层
wx.reLaunch() : 关闭所有页面,打开到应用的某个页面。
# 小程序 WXSS 与 CSS 的区别
wxss 背景图片只能引入外链,不能使用本地图片
小程序样式使用 @import 引入 外联样式文件,地址为相对路径。
尺寸单位为 rpx , rpx 是响应式像素,可以根据屏幕宽度进行自适应。
# wxml 与标准的 html 的异同
相同点:
都是用来描述页面的结构;
都由标签、属性等构成;
不同点:
标签名字不一样,且小程序标签更少,单一标签更多;
多了一些 wx:if 这样的属性以及 这样的表达式
WXML 仅能在微信小程序开发者工具中预览,而 HTML 可以在浏览器内预览
组件封装不同, WXML 对组件进行了重新封装,
小程序运行在 JS Core 内,没有 DOM 树和 window 对象,小程序中无法使用 window 对象和 document 对象。
# bindtap 和 catchtap 区别
相同点: 都是点击事件
不同点: bindtap 不会阻止冒泡, catchtap 可以阻止冒泡
# 小程序有哪些传递数据的方法
- 使用全局变量
在 app.js 中的 this.globalData = { } 中放入要存储的数据。
在 组件.js 中, 头部 引入 const app = getApp(); 获取到全局变量
直接使用 app.globalData.key 来进行赋值和获取值。
- 使用 路由
wx.navigateTo 和 wx.redirectTo 时,可以通过在 url 后 拼接 + 变量, 然后在 目标页面 通过在 onLoad 周期中,通过参数来获取传递过来的值。
- 使用本地缓存