## 属性说明

| 属性 | 说明 | 类型 | 默认值 |
| :--- | :--- | :--- | :--- |
| inline | 是否内联，默认挂载到body上 | `bool` | `false` |
| visible | 是否可见 | `bool` | `false` |
| title | 气泡框标题 | `node` | `undefined` |
| content | 气泡框内容 | `node` | `undefined` |
| button | 气泡框按钮组 | `arrayOf(PropTypes.element)` | `undefined` |
| zIndex | 气泡框zIndex | `number` | `5000` |
| onVisibleChange | 气泡框显示或隐藏后的回调 | `func` | `空函数` |
| onBeforeVisibleChange | 气泡框显示或隐藏前的回调 | `func` | `空函数` |
| className | 气泡框自定义className | `string` | `''` |
| placement | 气泡框位置，取值可选['left', 'right', 'top', 'bottom', 'topLeft', 'leftTop', 'topRight', 'rightTop', 'bottomRight', 'rightBottom', 'bottomLeft', 'leftBottom'] | `string` | `bottom` |
| maxWidth | 气泡框最大宽度 | `number` | `300` |
| getTarget | 获取气泡框目标元素函数 | `func` | `() => document.body` |
| align | 自定义气泡框位置，与align组件的属性配置相同 | `object` | `undefined` |


## 回调函数说明

```js
// 气泡框显示隐藏前的回调，返回false阻止回调onVisibleChange执行，参数visible表示nextProps.visible
onBeforeVisibleChange: function(visible) {
  // todo...

  return false; // 返回 false 是会阻止onVisibleChange执行
}
```

## 其他说明

* align不存在时，placement参数才会生效，align优先级高于placement

