vuejs2 изменить метод не работает в настоящее время

vuejs2 изменить метод не работает в настоящее время

11.09.2019 09:53:40 Просмотров 47 Источник

У меня есть проект, работающий с vuejs2 и это html-код

<input @keyup='check_item_offer(arrayresult.id, arrayresult.unit_id, arrayresult.qty, key, 16)' v-model='arrayresult.qty' />

и это keyup

все работает так хорошо

Если я изменю check_item_offer:function(item_id ,unit_id, quantity, key, tax) { this.taxss = tax; $.ajax({ type:'POST', url: path + 'check_item_offer', data: { item_id: item_id, unit_id: unit_id, quantity: quantity }, success:(data) => { console.log(data); if(data != '') { $.ajax({ type:'POST', url: path + 'get_item_data', data: { item_id: item_id, unit_id: unit_id }, success:(datas) => { data['item_sale_offer_detale_price'] = data['item_sale_offer_detale_price'] * (1 + this.taxss / 100); datas = datas * (1 + this.taxss / 100); var qty = this.arrayresults[key].qty; var old_price = datas; var offer_quantity = data['item_sale_offer_detale_quantity']; var remain = this.arrayresults[key].qty % data['item_sale_offer_detale_quantity']; var new_price = data['item_sale_offer_detale_price']; var item_with_new_price_quantity = qty - remain; var price_with_offers = (item_with_new_price_quantity / offer_quantity) * new_price; var price_without_offers = old_price * remain; var total_price = (price_with_offers + price_without_offers) / qty; this.arrayresults[key].item_smallest_unit_selling_price = total_price; this.arrayresults[key].items_quantity_selling_price = total_price; } }); } } }); } -во С помощью keyup он будет работать нормально но если я изменю arrayresult.qty С помощью AJAX-вызов любого другого способа arrayresult.qty он не будет работать на keyup , пока я иду к входу и нажмите любую клавишу

Как я могу запустить check_item_offerдаже если я изменяю check_item_offer даже AJAX-вызов ?
Спасибо

У вопроса есть решение - Посмотреть?

https://stackoverflow.com/questions/57883623/vuejs2-change-method-not-working-currently#comment102199322_57883623
перемены наступают после этого.taxss = налог; в AJAX-вызов

Ответы - vuejs2 изменить метод не работает в настоящее время / vuejs2 change method not working currently

Является ответом!
zapping

13.09.2019 01:27:51

Если вы хотите запустить функцию, check_item_offer, установите событие keyup для изменений в v-модели, arrayresult.кол-во, стоимость программными средствами, AJAX-вызовы, то вы должны установить часы для V-модель переменной, как так

watch:{
    'arrayresult.qty'(newVal, oldVal){
        this.check_item_offer(itemId, unitId, newVal, key, 16);
    }
}

Для получения дополнительной информации о часах vuejs

https://stackoverflow.com/questions/57883623/vuejs2-change-method-not-working-currently/57921889#comment102265778_57921889
это не сработало со мной, но если я изменю часы, как эти часы: { arrayresults(newVal, oldVal) { alert ("Asdfasdf"); //this.check_item_offer(itemId, unitId, newVal, key, 16);} }, его работа
https://stackoverflow.com/questions/57883623/vuejs2-change-method-not-working-currently/57921889#comment102265796_57921889
мне нужно посмотреть arrayresult.кол-во от любого изменения
https://stackoverflow.com/questions/57883623/vuejs2-change-method-not-working-currently/57921889#comment102267945_57921889
Вы можете проверить эту ручку. Использование-дело было на пробу. сайт CodePen.Ио/переключать-на-селектора/ручки/GRKGXYr?Редакторы=1011
Закрыть X