Hej
Mam pewien problem z Vue.JS i nie mam pojęcia jak go rozwiązać a sam problem jest błachy.
Utworzyłem formularz w modalu dzięki któremu mogę modyfikować poszczególnie dane. Gdy klikam edit, otwiera się okienko z danymi danego obiektu. Tutaj wszystko działa.
Problem pojawia się w momencie, gdy wpisuje nowe dane i chcę je wyświetlić w konsoli. Nic się nie pojawia. Myślałem, że funkcja się nie wywołuje więc dodałem tekst ale ten się pojawia. Mam wrażenie, że "this" po prostu jest puste.
Metoda na otworzenie modalu oraz pobrania informacji z modyfikowanego obiektu:
updateModal(index){
$( "#updateModal" ).toggle();
this.new_update_advantage = this.advantages[index];
},
I to działa bez problemu.
Tutaj funkcja która wysyła nowe dane do konsoli:
updateAdvantages(){
console.log("Advantage data");
console.log(this.new_update_advantage);
console.log(this.new_update_advantage.title);
},
I ona już nie działa. Po kliknięciu na przycisk, w konsoli pojawia się tylko Advantage data i nic innego. Gdy przenoszę dwa ostatnie konsol logi do UpdateModal, wtedy konsola wyświetla mi dane bez żadnego problemu.
i tutaj jeszcze moje data:
data(){
return {
advantage:{
icon: '',
title: '',
text: '',
},
advantages: [],
errors: [],
new_update_advantage: [],
uri: 'http://127.0.0.1:8000/api/advantages/'
}
},
Z jakiegoś powodu funkcja updateAdvantages nie może odnaleźć obiektu
Czy ktoś może wie jak to rozwiązać ?