I'm using :on-change callback and I search serverside and return new options. However nothing is shown because I suspect v-select does it's own client side filtering.
Can this be disabled?
I'm also very interesting in this behaviour.
So after looking into the code it seems that it does a filtering for the options in this section of the code.
filteredOptions() {
let options = this.mutableOptions.filter((option) => {
if (typeof option === 'object' && option.hasOwnProperty(this.label)) {
return option[this.label].toLowerCase().indexOf(this.search.toLowerCase()) > -1
} .........
if a boolean prop can be added to prevent this that would be great like
/**
* Disable the option filtering.
* @type {Boolean}
*/
noFilter: {
type: Boolean,
default: false
},
Then the upper code would have to check on that first
filteredOptions() {
let options = this.mutableOptions.filter((option) => {
if(this.noFilter)
{
return true;
}
else if (typeof option === 'object' && option.hasOwnProperty(this.label)) {
return option[this.label].toLowerCase().indexOf(this.search.toLowerCase()) > -1
} .........
I am also experiencing the same problem. The server returns a response but nothing is shown because the results are filtered. This makes it impossible to e.g. perform a SQL search based on multiple keywords.
Will be solved by PR #191.
You can use <v-select :filterable="false"> to prevent client side filtering.
Most helpful comment
You can use
<v-select :filterable="false">to prevent client side filtering.