mirror of https://github.com/ElemeFE/element
Popover: add manual
parent
d4e45e8d9b
commit
602c569989
|
@ -207,7 +207,7 @@ Of course, you can nest other operations. It's more light-weight than using a di
|
||||||
### Attributes
|
### Attributes
|
||||||
| Attribute | Description | Type | Accepted Values | Default |
|
| Attribute | Description | Type | Accepted Values | Default |
|
||||||
|--------------------|----------------------------------------------------------|-------------------|-------------|--------|
|
|--------------------|----------------------------------------------------------|-------------------|-------------|--------|
|
||||||
| trigger | how the popover is triggered | string | click/focus/hover | click |
|
| trigger | how the popover is triggered | string | click/focus/hover/manual | click |
|
||||||
| title | popover title | string | — | — |
|
| title | popover title | string | — | — |
|
||||||
| content | popover content, can be replaced with a default `slot` | string | — | — |
|
| content | popover content, can be replaced with a default `slot` | string | — | — |
|
||||||
| width | popover width | string, number | — | Min width 150px |
|
| width | popover width | string, number | — | Min width 150px |
|
||||||
|
|
|
@ -234,7 +234,7 @@ Popover 的属性与 Tooltip 很类似,它们都是基于`Vue-popper`开发的
|
||||||
### Attributes
|
### Attributes
|
||||||
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|
| 参数 | 说明 | 类型 | 可选值 | 默认值 |
|
||||||
|--------------------|----------------------------------------------------------|-------------------|-------------|--------|
|
|--------------------|----------------------------------------------------------|-------------------|-------------|--------|
|
||||||
| trigger | 触发方式 | String | click/focus/hover | click |
|
| trigger | 触发方式 | String | click/focus/hover/manual | click |
|
||||||
| title | 标题 | String | — | — |
|
| title | 标题 | String | — | — |
|
||||||
| content | 显示的内容,也可以通过 `slot` 传入 DOM | String | — | — |
|
| content | 显示的内容,也可以通过 `slot` 传入 DOM | String | — | — |
|
||||||
| width | 宽度 | String, Number | — | 最小宽度 150px |
|
| width | 宽度 | String, Number | — | 最小宽度 150px |
|
||||||
|
|
|
@ -28,7 +28,7 @@ export default {
|
||||||
trigger: {
|
trigger: {
|
||||||
type: String,
|
type: String,
|
||||||
default: 'click',
|
default: 'click',
|
||||||
validator: value => ['click', 'focus', 'hover'].indexOf(value) > -1
|
validator: value => ['click', 'focus', 'hover', 'manual'].indexOf(value) > -1
|
||||||
},
|
},
|
||||||
title: String,
|
title: String,
|
||||||
content: String,
|
content: String,
|
||||||
|
@ -67,7 +67,7 @@ export default {
|
||||||
on(popper, 'mouseenter', this.handleMouseEnter);
|
on(popper, 'mouseenter', this.handleMouseEnter);
|
||||||
on(reference, 'mouseleave', this.handleMouseLeave);
|
on(reference, 'mouseleave', this.handleMouseLeave);
|
||||||
on(popper, 'mouseleave', this.handleMouseLeave);
|
on(popper, 'mouseleave', this.handleMouseLeave);
|
||||||
} else {
|
} else if (this.trigger === 'focus') {
|
||||||
let found = false;
|
let found = false;
|
||||||
|
|
||||||
if ([].slice.call(reference.children).length) {
|
if ([].slice.call(reference.children).length) {
|
||||||
|
|
|
@ -45,6 +45,20 @@ describe('Popover', () => {
|
||||||
}, 250); // 代码里是 200ms
|
}, 250); // 代码里是 200ms
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('manual', done => {
|
||||||
|
vm = createVM('manual');
|
||||||
|
const compo = vm.$refs.popover;
|
||||||
|
const button = vm.$el.querySelector('button');
|
||||||
|
|
||||||
|
triggerEvent(button, 'mouseenter');
|
||||||
|
expect(compo.showPopper).to.false;
|
||||||
|
triggerEvent(button, 'mouseleave');
|
||||||
|
setTimeout(_ => {
|
||||||
|
expect(compo.showPopper).to.false;
|
||||||
|
done();
|
||||||
|
}, 250); // 代码里是 200ms
|
||||||
|
});
|
||||||
|
|
||||||
it('focus input in children node', () => {
|
it('focus input in children node', () => {
|
||||||
vm = createVue(`
|
vm = createVue(`
|
||||||
<div>
|
<div>
|
||||||
|
|
Loading…
Reference in New Issue