UNPKG

weex-flymeui

Version:

A Flyme Style UI library based on Weex for Creator.

78 lines (65 loc) 2.42 kB
# fm-popover > 在页面上弹出一个浮层气泡菜单,可供用户做更多的操作。菜单弹出时,点击菜单外任意区域隐藏。 ## 规则 - 常用于 titleBar 右侧按钮显示更多的操作 - 在指定坐标位置弹出菜单,点击菜单外任意区域隐藏 - 支持上、下、左、右、中四个方向的出现动画效果 ## 使用方法 ```vue <template> <div> <fm-titlebar title="点击右边按钮试试" :rightBtns="{ type: 'icon', value: 'gengduo' }" @fmTitlebarRightBtnClicked="show('top')" /> <fm-popover ref="popover-top" @fmPopoverBtnClicked="onClicked" :position="{ x: -1, y: 144, pos: 'top' }" :buttons="buttons"></fm-popover> </div> </template> <script> import { FmPopover, FmTitlebar } from 'weex-flymeui'; const modal = weex.requireModule('modal'); export default { components: { FmPopover, FmTitlebar }, data: () => ({ overShow: false, buttons: [{ text: '查看', icon: 'saomiao' }, { text: '查看' }, { text: '查看' }] }), methods: { show (pos) { this.$refs[`popover-${pos}`].visible(true); }, onClicked (e) { modal.toast({ message: e.index }); } } }; </script> ``` 更多详细代码例子可以参考 [demo](https://github.com/FlymeApps/weex-flymeui/blob/master/example/component/popover/index.vue) ## 可配置参数 | Prop | Type | Required | Default | Description | |-------------|------------|--------|-----|-----| | buttons | `Array` |`Y`| `[]` | 气泡菜单按钮数据源 | | buttons[{`text`}] | `String` |`Y`| `''` | 按钮文案 | | buttons[{`icon`}] | `String` |`N`| `-` | 按钮左侧的 icon,请参照 [fm-icon](https://flymeapps.github.io/weex-flymeui/#/packages/fm-icon/) | | position | `Object` |`Y`| `{}` | 菜单的位置,x > 0 为左边距,x < 0 为右边距,y 同理 | | overlay-opacity | `Number` |`N`| `0` | 蒙层的透明度 | | hasAnimation | `Boolean` |`N`| `true` | 是否使用动画过渡 | ## 可供外部使用的方法 - `visible(bool)` 在 fm-popover 上绑定 ref 后,调用此方法可控制菜单的显示和隐藏 ## 事件回调 - `fmPopoverBtnClicked` 菜单按钮被点击时触发,事件对象中包含 `index 所点击按钮的索引值` ## Slot 暂无