Ir para o conteúdo
Waterlog

[Ajuda] Estrutura de dados

Mensagens Recomendadas

Waterlog

Boas pessoal,

Estou a iniciar em Javascript e estou aqui com uma dificuldade. Tenho a seguinte estrutura de dados e estou a consumir uma api que me devolve JSON.

O meu problema é que não sei como transformar a informação que a API me devolve no formato necessário para binding do events.

Estrutura onde tenho de fazer binding.

events: [
{
title: 'Sample 1',
start: '2013-01-01',
end: '2014-01-01',
},
{
title: 'Sample 2'
start: '2013-01-01',
end: '2014-01-01',
}
]

Devolvido pela API:


{
"tarefas": [
	{
		"idProjeto": "60",
		"nomeProjeto": "projecto1",
		"idtarefa": "138",
		"titulo": "tarefaDoUser75",
		"dataCriacao": "2012-12-12 00:00:00",
		"dataLimite": "2012-12-22 00:00:00"
	},
	{
		"idProjeto": "64",
		"nomeProjeto": "sub",
		"idtarefa": "139",
		"titulo": "tarefanova",
		"dataCriacao": "2012-12-12 00:00:00",
		"dataLimite": null
	}
]
}

Com os melhores cumprimentos,

Waterlog.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
brunoais

Qual o significado de null em "dataLimite"?

De qq modo, podes usar o JSON.parse() para passar isso para um array of Object em js.

Depois é só pegar no que queres, por exemplo:

Este código é próximo do js que queres, não está completo e não é js válido. Há umas partes que precisas de passar para js. Escrevo assim só para perceberes a lógica de como fazer.

for ( (each element from) JSON.parse().tarefas){
   events.push(
       {
           title: elem.nomeProjeto,
           start: elem.dataCriacao,
           end: elem.dataLimite,
       }
   );        
}

https://developer.mozilla.org/en-US/docs/Javascript/Reference/Global_Objects/JSON/parse

Editado por brunoais
  • Voto 1

"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Waterlog

Obrigado brunoais!

Aqui fica a solução:

var eventos = new Array();

for(var i = 0; i < tarefas.tarefas.length; i++)
{
eventos.push(
{
title: tarefas.tarefas[i].nomeProjeto,
start: tarefas.tarefas[i].dataCriacao,
end: tarefas.tarefas[i].dataLimite,
}
)
}
[...]
events: eventos,
[...]

Cumprimentos,

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.