Nedumerire VueJS

Salut !

Cum pot trimite o valoare pe care o selectez dintr-un dropdown list la functia mount() din Vuejs ?

Am creat dropdown-ul, am atasat evenimentul @onchange, am scris functia care ia valoarea din lidta dropdoen, dar nu reusesc sa o trimit mai departe

Codepen aferent


Scuze daca am facut o tampenie dpdv js. Inca invat

Folosesc un cdn pt vue si axios.

asa arata local.

Nu poti. ‘mounted()’ este apelata doar atunci cand se creaza instanta de vue.js (https://vuejs.org/v2/api/#mounted)

O varianta ar fi sa separi codul din mounted() intr-o alta metoda pe care o apelezi cand se schimba valoarea dropdown-ului (https://vuejs.org/v2/guide/computed.html#Computed-vs-Watched-Property)

1 Like

Merci frumos :slight_smile:

Voi mai incerca maine !

LE:
@tere, am reusit. Am scos acel cod din mounted si l-am pus intr-o alta metoda. Merci frumos pt ajutor

1 Like
methods: {
            getSelectedValue() {
                var values = this.options.map(function(o) { return o.value })
                var index = values.indexOf(this.selected)
                var selectedText = this.options[index].text
                //alert(selectedText)
                getWwather(selectedText)              
            }

//codul din mounted l-am pus in functia de mai jos
    function getWwather(selected){
        var api_url = "http://api.apixu.com/v1/current.json?key=cheie_api&q=" + selected
            axios.get(api_url).then(response => {
                app.object.location = response.data.location.name;
                app.object.time = response.data.location.localtime;
                app.object.actual_temp = response.data.current.temp_c;
                app.object.feels_like = response.data.current.feelslike_c;              
            })
    }

Am actualizat si codepen-ul :slight_smile:


Folosesc Apixu pt a prelua datele depsre vreme, in caz ca este cineva interesat.

https://www.apixu.com/