基尔霍夫定律 KCL KVL 分压定律 分流电路 U=RI W=UIt
小程序生命周期
- 生命周期函数-onLoad: 页面加载
- 一个页面只会调用一次,可以在 onLoad 中获取打开当前页面所调用的 query 参数。
onShow
: 页面显示- 每次打开页面都会调用一次。
onReady
: 页面初次渲染完成- 一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互。
onHide
: 页面隐藏- 当navigateTo或底部tab切换时调用
onUnload
: 页面卸载
简单描述下微信小程序的相关文件类型?
.json
后缀的 JSON 配置文件.wxml
后缀的 WXML 模板文件.wxss
后缀的 WXSS 样式文件.js
后缀的 JS 脚本逻辑文件
app.json 是对当前小程序的全局配置,讲述三个配置各个项的含义?
pages字段
—— 用于描述当前小程序所有页面路径,这是为了让微信客户端知道当前你的小程序页面定义在哪个目录。window字段
—— 小程序所有页面的顶部背景颜色,文字颜色定义在这里的tab字段
—小程序全局顶部或底部tab
小程序的wxss和css有哪些不一样的地方?
新像素单位
rpx样式可直接使用import导入
小程序有哪些参数传值的方法?
- 给HTML元素添加
data-
属性来传递我们需要的值,然后通过e.currentTarget.dataset或onload的param参数获取。但data-名称不能有大写字母和不可以存放对象; 设置id
的方法标识来传值通过e.currentTarget.id获取设置的id的值,然后通过设置全局对象的方式来传递数值;- 在
navigator中添加参数
传值。
微信小程序与H5的区别?
- 第一条是
运行环境的不同
传统的HTML5的运行环境是浏览器,包括webview,而微信小程序的运行环境并非完整的浏览器,是微信开发团队基于浏览器内核完全重构的一个内置解析器,针对小程序专门做了优化,配合自己定义的开发语言标准,提升了小程序的性能。 - 第二条是
开发成本
的不同 只在微信中运行,所以不用再去顾虑浏览器兼容性,不用担心生产环境中出现不可预料的奇妙BUG - 第三条是
获取系统级权限
的不同 接系统级权限都可以和微信小程序无缝衔
小程序onPageScroll方法的使用注意什么?
- 由于此方法调用频繁,不需要时,可以去掉,不要保留空方法,并且使用onPageScroll时,
尽量避免使用setData(),尽量减少setData()的使用频次
。
小程序视图渲染结束回调?
- 使用setData(data, callback),在callback回调方法中添加后续操作代码
小程序同步API和异步API使用时注意事项?
- 像wx.setStorageSync这种以Sync结尾的API为同步API,使用时使用try-catch来查看异常,如果判定API为异步,可以在其回调方法success、fail、complete中进行下一步操作
小程序对wx:if 和 hidden使用的理解?
wx:if 有更高的切换消耗
。hidden 有更高的初始渲染消耗
。- 因此,如果
需要频繁切换
的情景下,用 hidden 更好
,如果在运行时条件不大可能改变则 wx:if 较好。
小程序兼容问题
ios下的zIndex层级问题
,主要发生在iphone7和iphoneX下- 当页面元素是绝对定位的时候,设置层级的时候,必须在绝对定位元素都在一个
<view>标签下
,如果元素在两个标签下,层级不生效 - 如果是上面这种结构,z-index 可能在ios下,不生效,要想生效,需要将改成嵌套的结构
- 当页面元素是绝对定位的时候,设置层级的时候,必须在绝对定位元素都在一个
new Date()
时间格式不兼容小程序 跟 企业微信 的兼容问题
- 引入echart的问题
- 使用cover-view
小程序全局实例getApp 安卓有时候获取不到自定义事件
- 解决方案:
- 将自定义事件独立出来,在页面需要的时候使用Object.assign(app,tools)进行合并
自定义组件
圆形百分比
background 渐变
javascript基础知识总结