美文网首页
《微信小程序开发从入门到实战》学习九十

《微信小程序开发从入门到实战》学习九十

作者: 阿宅白石 | 来源:发表于2024-01-21 23:50 被阅读0次

    6.16 事件监听API

    6.16.4 监听内存不足API

    当用户手机内存资源不足时,微信可能会回收一部分小程序占用的资源。

    可使用wx.onMemoryWarning监听内存不足告警事件。事件发生时,开发者可主动回收一些不必应的资源,避免内存不足小程序被迫关闭。自基础库2.0.2版本开始支持。示例代码如下:

        wx.onMemoryWarning(res => {

          console.log(res.level) // 内存告警等级。只有Android才有,对应系统宏定义。

        })

    level属性只有Android系统才可以获取,该值表示内存告警的等级,值如下所示:

    5:TRIM_MEMORY_RUNNING_MODERATE

    10:TRIM_MEMORY_RUNNING_LOW

    15:TRIM_MEMORY_RUNNING_CRITICAL

    第七章 小程序组件

    组件是小程序视图层的基本组成单元,通常自带一些功能与样式,有各自定义的属性。设置属性值可对组件功能和样式进行修饰,通过wxss修改组件的样式。

    小程序为组件提供一系列基础组件,可组合用。可自定义组件,可使用第三方自定义组件。

    小程序组件如下:

    介绍小程序的视图容器组件

    介绍小程序的基础内容组件

    介绍小程序的表单组件

    介绍小程序的视频组件

    介绍小程序的相机组件

    介绍小程序的地图组件

    介绍小程序的画布组件

    介绍小程序的广告组件

    学习如何自定义小程序组件

    7.1 视图容器组件

    视图容器组件简称容器组件。容器组件可包含其他组件,使页面的WXML代码形成层次结构。被包含的组件可是容器组件,也可是非容器组件。容器组件结合wxss代码可实现页面布局。

    view组件是最基础的视图容器组件,小程序还提供了一下有额外功能的容器组件。将详细介绍。

    7.1.1 view组件

    view组件是最基础,最常用的组件。支持属性如下:

    hover-class:默认值none,指定按下去的样式类。none表示没有单击态效果,最低版本1.0.0

    hover-start-time:默认值50,按住后多久出现单击态,单位为毫秒,最低版本1.0.0。

    hover-stay-time:默认值400,手机松开后单击态保留时间,单位为毫秒,最低版本1.0.0

    hover-stop-propagtion:默认值false,指定是否阻止本节点的祖先节点出现单击态,最低版本1.5.0

    hover-calss设置的类只在单击组件时才生效,因此只有在用户单击view组件时,才会显示hover-class对应的样式。

    hover-start-time和hover-stay-time可以设置单击态的出现时间和保留时间,即按住view组件后多久后hover-class开始生效,以及手指松开后多久后hover-calss的样式消失。

    hover-stop-propagtion默认false,表示不阻止view组件的祖先节点出现单击态。所谓祖先节点就是组件的父节点,以及父节点的父节点,以及往上的父节点。当单击子组件,实际也单击了父节点。该属性就是用于设置是否允许事件向父组件传递。

    用以下代码举例说明:

    <!-- WXML-->

    <view class="parent" hover-class="parent-hover">

      <view class="child" hover-stop-propagation="{{true}}"></view>

    </view>

    /* WXSS */

    .parent {

      width: 200rpx;

      height: 200rpx;

      background: blue;

    }

    .parent-hover {

      background:yellow;

    }

    .child {

      width: 100rpx;

      height: 100rpx;

      background: red;

    }

    代码实现效果如下:

    当单击蓝色区域时,parent组件变为单击态,此时组件就会应用parent-hover类上面的样式,即背景色变为黄色。

    当单击红色区域时,child组件变为单击态,child未设置hover-class,child组件不会发生变化。尽管单击位置也位于parent组件内部,但child组件设置了hover-stop-propagation="{{true}}",因此parent组件不会出现单击态,样式不会变。

    相关文章

      网友评论

          本文标题:《微信小程序开发从入门到实战》学习九十

          本文链接:https://www.haomeiwen.com/subject/iacyodtx.html