更新记录

0.0.2(2023-06-30)

  • fix: nvue缺少点击事件

0.0.1(2023-06-30)

  • 初版,可能会存在BUG

平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 3.1.0 app-vue app-nvue × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序
× × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
× × × ×

lime-fab 浮动气泡

  • 基于uniapp vue3 实现的悬浮在页面边缘的可点击气泡,目前只在h5、微信小程序、APP(Nvee|vue)上测试过

    代码演示

基础用法

浮动气泡默认展示在右下角,并允许在 y 轴方向上下拖拽。

<l-fab @click="onClick" />
const onClick = () => {
    console.log('点击气泡')
};

自由拖拽和磁吸

允许 x 和 y 轴方向拖拽,吸附到 x 轴方向最近一边。

<l-fab
  axis="xy"
  magnetic="x"
  @change="onOffsetChange"
/>
const onOffsetChange = (offset) => {
    showToast(offset.x + '__' + offset.y);
};

使用 v-model

  • vue3 使用 v-model:offset 控制位置。
  • vue2 使用 :offset.sync 控制位置。
// vue3
<l-fab v-model:offset="offset" axis="xy" />
// vue2
<l-fab :offset.sync="offset" axis="xy" />
// vue3
 const offset = ref({ x: 200, y: 400 });

 //vue2
 data() {
     return {
         offset: { x: 200, y: 400 }
     }
 }

查看示例

  • 导入后直接使用这个标签查看演示效果
<!-- // 代码位于 uni_modules/lime-fab/compoents/lime-fab -->
<lime-fab />

插件标签

  • 默认 l-fab 为 component
  • 默认 lime-fab 为 demo

关于vue2的使用方式

  • 插件使用了composition-api, 如果你希望在vue2中使用请按官方的教程vue-composition-api配置

  • 关键代码是: 在main.js中 在vue2部分加上这一段即可.

    // vue2
    import Vue from 'vue'
    import VueCompositionAPI from '@vue/composition-api'
    Vue.use(VueCompositionAPI)
  • 另外插件也用到了TS,vue2可能会遇过官方的TS版本过低的问题,找到HX目录下的compile-typescript目录

    // \HBuilderX\plugins\compile-typescript
    yarn add typescript -D
    // - or - 
    npm install typescript -D

API

Props

参数 说明 类型 默认值
v-model:offset 控制气泡位置 OffsetType 默认右下角坐标
axis 拖拽的方向,xy 代表自由拖拽,lock 代表禁止拖拽 'x' | 'y' | 'xy' | 'lock' y
magnetic 自动磁吸的方向 'x' | 'y' -
gap 气泡与窗口的最小间距,单位为 px 'number' | 'string' 24

Events

事件 说明 回调参数
click 点击组件时触发 MouseEvent
change 由用户拖拽导致位置改变后触发 {x: string, y: string}

Slots

名称 说明
default 自定义气泡显示内容

主题定制

样式变量

  • nvue不支持 组件提供了下列 CSS 变量,可用于自定义样式
名称 默认值 描述
--l-fab-size 48px -
--l-fab-initial-gap 24px -
--l-fab-icon-size 28px -
--l-fab-background #1677ff -
--l-fab-color white -
--l-fab-z-index 999 -

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问