1234567891011121314151617181920212223242526272829303132 |
- import Vue from 'vue';
- import popover from './popover.vue';
- import {calcTipPosition} from './utils'
- // import CalcTargetPosition from '../static/utils/CalcTargetPosition'
- // import {zIndexIncrease, zIndex} from './dispatchZindex'
- const PopoverExtend=Vue.extend(popover); // 继承Vue
- let PopoverVm = null
-
- const createPopover= (options) => {
- let {tag, props}=options;
- let pos=tag.getBoundingClientRect(); // 根据当前点击的dom对象获取位置
- props.pos = pos
- PopoverVm = new PopoverExtend({data:props})
- PopoverVm = PopoverVm.$mount()
- const bodyDom = document.body
- bodyDom.appendChild(PopoverVm.$el)
- return PopoverVm
- }
- createPopover.resetPosition = (pDom,tDom, leftW, tipPlace, border) => {
- return calcTipPosition(pDom, tDom, leftW, tipPlace, border)
- }
- createPopover.remove=(vm) => {
- if (!vm) return;
- if (vm._isDestroyed) return;
- vm.$destroy();
- const dom=vm.$el;
- if (dom) dom.parentNode.removeChild(dom);
- }
- export default createPopover
|