Добрый день.
Делаю поиск. Использую vue и axios. Требуется, чтоб запрос отправился по окончанию ввода. Нашел решение, как сделать это через setTimeout, теперь абсолютно запутался, как вернуть результат запроса в свойство компонента:
<script>
import axios from 'axios'
export default {
data: function () {
return {
<...>
inputString: "",
telbook: [],
<...>
};
},
computed:{
translateSearch: function () {
<...>
if (this.inputString.length < 2) {
this.doSearch(this.inputString);
}
return this.inputString;
},
},
methods:{
doSearch: function (searchString) {
window.clearTimeout(this.timeout);
this.timeout = window.setTimeout(function () {
axios.get('http://teldistr/search.php', {params: {
search_string: searchString,
}}).then((response) => {
// ВОПРОС:
// как передать ответ сервера в this.telbook???
this.telbook = response.data
}), (error) => {
console.log(error)
}
console.log(response);
}, 400)
}
}
}
</script>
Помогите, пожалуйста, джуниору