mirror of
https://github.com/BookStackApp/BookStack.git
synced 2025-05-24 15:49:59 +08:00
Finished breakdown of attachment vue into components
This commit is contained in:
29
resources/js/components/event-emit-select.js
Normal file
29
resources/js/components/event-emit-select.js
Normal file
@ -0,0 +1,29 @@
|
||||
import {onSelect} from "../services/dom";
|
||||
|
||||
/**
|
||||
* EventEmitSelect
|
||||
* Component will simply emit an event when selected.
|
||||
*
|
||||
* Has one required option: "name".
|
||||
* A name of "hello" will emit a component DOM event of
|
||||
* "event-emit-select-name"
|
||||
*
|
||||
* All options will be set as the "detail" of the event with
|
||||
* their values included.
|
||||
*
|
||||
* @extends {Component}
|
||||
*/
|
||||
class EventEmitSelect {
|
||||
setup() {
|
||||
this.container = this.$el;
|
||||
this.name = this.$opts.name;
|
||||
|
||||
|
||||
onSelect(this.$el, () => {
|
||||
this.$emit(this.name, this.$opts);
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
export default EventEmitSelect;
|
Reference in New Issue
Block a user