88 lines
2.3 KiB
Vue
88 lines
2.3 KiB
Vue
|
<script>
|
||
|
import Trigger from '../index'
|
||
|
import '../assets/index.less'
|
||
|
const builtinPlacements = {
|
||
|
left: {
|
||
|
points: ['cr', 'cl'],
|
||
|
},
|
||
|
right: {
|
||
|
points: ['cl', 'cr'],
|
||
|
},
|
||
|
top: {
|
||
|
points: ['bc', 'tc'],
|
||
|
},
|
||
|
bottom: {
|
||
|
points: ['tc', 'bc'],
|
||
|
},
|
||
|
topLeft: {
|
||
|
points: ['bl', 'tl'],
|
||
|
},
|
||
|
topRight: {
|
||
|
points: ['br', 'tr'],
|
||
|
},
|
||
|
bottomRight: {
|
||
|
points: ['tr', 'br'],
|
||
|
},
|
||
|
bottomLeft: {
|
||
|
points: ['tl', 'bl'],
|
||
|
},
|
||
|
}
|
||
|
|
||
|
const popupBorderStyle = {
|
||
|
border: '1px solid red',
|
||
|
padding: '10px',
|
||
|
}
|
||
|
|
||
|
export default {
|
||
|
render () {
|
||
|
return (
|
||
|
<div style={{ margin: '200px' }}>
|
||
|
<div>
|
||
|
<Trigger
|
||
|
popupPlacement='left'
|
||
|
action={['click']}
|
||
|
builtinPlacements={builtinPlacements}
|
||
|
>
|
||
|
<div slot='popup' style={popupBorderStyle}>i am a click popup</div>
|
||
|
<span>
|
||
|
<div ref='saveContainerRef1' />
|
||
|
<Trigger
|
||
|
popupPlacement='bottom'
|
||
|
action={['hover']}
|
||
|
builtinPlacements={builtinPlacements}
|
||
|
getPopupContainer={() => this.$refs.saveContainerRef1}
|
||
|
>
|
||
|
<div slot='popup' style={popupBorderStyle}>i am a hover popup</div>
|
||
|
<span href='#' style={{ margin: '20px' }}>trigger</span>
|
||
|
</Trigger>
|
||
|
</span>
|
||
|
</Trigger>
|
||
|
</div>
|
||
|
{ false ? <div style={{ margin: '50px' }}>
|
||
|
<Trigger
|
||
|
popupPlacement='right'
|
||
|
action={['click', 'hover']}
|
||
|
builtinPlacements={builtinPlacements}
|
||
|
>
|
||
|
<div style={popupBorderStyle} slot='popup' onClick={(e) => { e.stopPropagation() }}>
|
||
|
<div ref='saveContainerRef' />
|
||
|
<Trigger
|
||
|
popupPlacement='bottom'
|
||
|
action={['click']}
|
||
|
builtinPlacements={builtinPlacements}
|
||
|
getPopupContainer={() => this.$refs.saveContainerRef}
|
||
|
>
|
||
|
<div slot='popup' style={popupBorderStyle}>I am inner Trigger Popup</div>
|
||
|
<span href='#' style={{ margin: 20 }}>clickToShowInnerTrigger</span>
|
||
|
</Trigger>
|
||
|
</div>
|
||
|
<span href='#' style={{ margin: '20px' }} onClick={console.log}>trigger</span>
|
||
|
</Trigger>
|
||
|
</div> : null}
|
||
|
</div>
|
||
|
)
|
||
|
},
|
||
|
}
|
||
|
|
||
|
</script>
|