Problem
When I'm going to call the addPedido
function with v-on:click="addPedido"
of vue.js the Uncaught TypeError error: Can not read 'push' of null property and I could not identify the urgent problem needing urgent help!
the code
document.addEventListener("deviceready",onDeviceReady,false);
function onDeviceReady(){
var vm = new Vue({
el: '#app',
data:{
salgados: [],
doces: [],
bebidas:[],
pedido: {},
pedidos: []
},
methods:{
sync:function(){
$.ajax({
dataType: 'json',
url: 'http://192.168.0.100/conect/salgados.php',
success:function(dados){
localStorage.setItem('salgados',JSON.stringify(dados));
vm.setSalgados();
},
error:function(){
alert("ocorreu um erro durante a conexão com o servidor!");
}
});
$.ajax({
dataType: 'json',
url: 'http://192.168.0.100/conect/doces.php',
success:function(dados){
localStorage.setItem('doces',JSON.stringify(dados));
vm.setDoces();
},
error:function(){
alert("ocorreu um erro durante a conexão com o servidor!");
}
});
$.ajax({
dataType: 'json',
url: 'http://192.168.0.100/conect/bebidas.php',
success:function(dados){
localStorage.setItem('bebidas',JSON.stringify(dados));
vm.setBebidas();
},
error:function(){
alert("ocorreu um erro durante a conexão com o servidor!");
}
});
},
setSalgados:function(){
this.salgados = JSON.parse(localStorage.getItem('salgados'));
console.log(this.salgados);
},
setDoces:function(){
this.doces = JSON.parse(localStorage.getItem('doces'));
console.log(this.doces);
},
setBebidas:function(){
this.bebidas = JSON.parse(localStorage.getItem('bebidas'));
console.log(this.bebidas);
},
setPedidos:function(){
this.pedidos = JSON.parse(localStorage.getItem('pedidos'));
console.log(this.bebidas);
},
addPedido:function(){
this.pedidos.push(this.pedido);
localStorage.setItem('pedidos', JSON.stringify(this.pedidos));
this.pedido = {};
alert("Pedido enviado!")
},
removePedido:function(index){
this.pedidos.splice(index,1);
localStorage.setItem('pedidos', JSON.stringify(this.pedidos));
alert("Pedido Excluído!")
},
},
ready:function(){
this.setSalgados();
this.setDoces();
this.setBebidas();
this.setPedidos();
}
});
}