微信小程序知识点总结

1.calc()

允许计算 CSS 的属性值,比如动态计算长度值。
在微信小程序中涉及到全屏适配的问题,试了很多方法没有结果,最后决定用100vh-500rpx来实现,这时候就需要用到calc进行计算
vh 即viewpoint height,视窗高度,1vh=视窗高度的1% 500rpx为算出来的页面其他元素的高度
min-height:calc(100vh - 500rpx) 
tips: min-height高度不能继承,如果内部元素需要继承,如下操作即可
min-height:calc((100vh - 500rpx)*0.5 ) 

2.封装组件

子向父传值 通过triggerEvent触发

父级页面
<play-list bindfavouriteChange="favouriteChange"></play-list>
favouriteChange(e){
	// 取到组件中通过{}传入的值,如index,subjectType等
}
子页面(组件)
 this.triggerEvent('favouriteChange',{index: index,subjectType:list.subjectType})

3.如何在微信小程序中向数组中指定对象的属性传值?

this.setData({[`readWordsList[${index}].isStore`] : isStore})

4.关于 -webkit-overflow-scrolling: touch

-webkit-overflow-scrolling 属性控制元素在移动设备上是否使用滚动回弹效果.
auto: 使用普通滚动, 当手指从触摸屏上移开,滚动会立即停止。
touch: 使用具有回弹效果的滚动, 当手指从触摸屏上移开,内容会继续保持一段时间的滚动效果。继续滚动的速度和持续的时间和滚动手势的强烈程度成正比。同时也会创建一个新的堆栈上下文。(from MDN)

我在首页滚动中加个这个属性,结果导致上滑的时候出现花屏的问题。排查好久找到这个问题,特意记录一下

5关注同一主体的公众号功能

<official-account></official-account>
这个组件限定最小宽度为300px,高度为定值84px,样式几乎不可调,可考虑在外嵌套一个view进行样式的微调。
最让人抓狂的是这个组件的显示需要固定的场景值,详见微信开发文档。这样就给用户一会显示一会不显示的错觉。

6.微信小程序正向计时

使用setInterval 1000毫秒加1即可
分享一下补零和时间格式化函数

// 补零
padZero(str, dig = 2) {
    str = "" + str;

    while (str.length < dig) {
      str = "0" + str;
    }
    return str;
  },
 // 时间格式化 传入毫秒
  parseMs(ms) {
    if (typeof ms !== "number") {
      throw new TypeError("Expected a number");
    }

    const roundTowardsZero = ms > 0 ? Math.floor : Math.ceil;
    const days = roundTowardsZero(ms / 86400000);
    const hours = this.padZero(roundTowardsZero(ms / 3600000) % 24);
    const minutes = this.padZero(roundTowardsZero(ms / 60000) % 60);
    const seconds = this.padZero(roundTowardsZero(ms / 1000) % 60);
    return { hours, minutes, seconds };
  }

7.cover-view

cover-view层级很高,可用于覆盖canvas,但是有一个很隐蔽的bug, 经测试, 在华为p20 pro 中 上下并排两个cover-view,中间有间隙,不会紧密贴合。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值