2016-05-24 2 views
0

Так я получаю ответ JSon от моего контроллера, который выглядит просто нравится:Vue.js развращают данные при установке массива

return Plan::find($request->id)->toJson(); 

И когда я устанавливаю полученные данные в массив ви, некоторые данные повреждаются, даты изменяются случайным образом (для exmaple, дата начала и дата окончания становятся одинаковыми, но сетевой ответ правильный).

Я выяснил, что проблема связана с vue.js, который я использую для управления данными. на данный момент, метод вю, который получает данные выглядит следующим образом:

updatePlan: function(id) { 
    var json; 
    $.getJSON('{{action("[email protected]")}}',{id}).success(function(data) { 
    {plan: id}).success(function(data) { 
     json=data; 
     animatedOpenModal('edit-button','editPlanModal');      
    }); 
    setTimeout(function(){ 
     console.log(json); 
     //vm.setPlan(json); 
    },100); 
}, 

и комментируемого метод

setPlan: function(json) { 
    vm.$set('current_edit_plan', json); 
    console.log(vm.current_edit_plan);     
}, 

и сейчас console.log(json) показывает правильные данные, но если я удалю // - все развалится : даты станут некорректными как в журналах консоли, так и в самом массиве.

Что это и как это можно решить? Я был бы очень признателен за любую возможную помощь!

ответ

0

Попробуйте это:

updatePlan: function(id) { 
    var self = this; 
    var json; 
    $.getJSON('{{action("[email protected]")}}',{id}).success(function(data) { 
    {plan: id}).success(function(data) { 
     json = data; 
     animatedOpenModal('edit-button','editPlanModal');      
    }); 
    setTimeout(function(){ 
     console.log(json); 
     self.setPlan(json); 
    },100); 
}, 

Тогда для метода setPlan:

setPlan: function(json) { 
    this.current_edit_plan = json; 
    console.log(this.current_edit_plan);     
}, 
Смежные вопросы