2
0
mirror of https://github.com/tenrok/vue-select.git synced 2026-06-10 07:52:23 +03:00

WIP: v3 – remove onSearch callback prop (#811)

* remove onSearch callback prop

* update ajax docs

* docs formatting

* remove onSearch callback prop
This commit is contained in:
Jeff Sagal
2019-04-08 11:58:04 -07:00
committed by GitHub
parent b5e239c49c
commit 01ecee93d5
5 changed files with 66 additions and 100 deletions
+18 -31
View File
@@ -7,51 +7,38 @@ export default {
*/
loading: {
type: Boolean,
default: false
default: false,
},
/**
* Accept a callback function that will be
* run when the search text changes.
*
* loading() accepts a boolean value, and can
* be used to toggle a loading class from
* the onSearch callback.
*
* @param {search} String Current search text
* @param {loading} Function(bool) Toggle loading class
*/
onSearch: {
type: Function,
default: function(search, loading) {} // eslint-disable-line no-unused-vars
}
},
data() {
data () {
return {
mutableLoading: false
mutableLoading: false,
};
},
watch: {
/**
* If a callback & search text has been provided,
* invoke the onSearch callback.
* Anytime the search string changes, emit the
* 'search' event. The event is passed with two
* parameters: the search string, and a function
* that accepts a boolean parameter to toggle the
* loading state.
*
* @emits search
*/
search() {
if (this.search.length > 0) {
this.onSearch(this.search, this.toggleLoading);
this.$emit("search", this.search, this.toggleLoading);
}
search () {
this.$emit('search', this.search, this.toggleLoading);
},
/**
* Sync the loading prop with the internal
* mutable loading value.
* @param val
*/
loading(val) {
loading (val) {
this.mutableLoading = val;
}
},
},
methods: {
@@ -62,11 +49,11 @@ export default {
* @param toggle Boolean
* @returns {*}
*/
toggleLoading(toggle = null) {
toggleLoading (toggle = null) {
if (toggle == null) {
return (this.mutableLoading = !this.mutableLoading);
}
return (this.mutableLoading = toggle);
}
}
},
},
};