Acessando dados de um Array de Objetos

Boa tarde a todos estou com um objeto com a seguinte estrutura:

[ {chave1:valor, chave2:valor}, {chave1:valor, chave2:valor}]

preciso acessar os dados para usá-los de forma individual, no JS padrão eu consigo acessar esses dados da seguinte forma array[0].chave1, array[1].chave2, mas dentro da plataforma do blip isso não parece possível… tentei as notações com o @ (array[0]@chave1, array@[0].chave1)e não obtive sucesso também…

nunca trabalhei com essa notação de @… alguem mais familiarizado com a plataforma pode me indicar algo?

obrigado.

1 Curtida

Hey, Blipper!

Infelizmente o BLiP não tem suporte a esse tipo de acesso, para qualquer outra dúvida estamos aqui!

1 Curtida

Olá, vcs teriam alguma sugestão de como tratar?

1 Curtida

Então Geraldo, a ideia é você sempre manter a estrutura de:

{
  chave1:valor, 
  chave2:valor, 
  chave3:valor,
  chave4:valor
}

E você pode fazer isso através de script.

2 Curtidas

Precisa pegar esse teu JSON e inserir ele na execução de script do blip, dentro desta execução, você consegue montar um JSON que permita o blip acessar como o @fadoaglauss comentou.

1 Curtida

Eu deveria salvar cada objeto em uma variável então? Seria isso ?

1 Curtida

Segue um exemplo simples do que poderias fazer

Meu endpoint retorna um objeto JSON

Ex:

{
"menuhorarios": [
    {
      "opcao": 1,
      "horario": "03/05/21 08:00",
      "service": 84,
      "item": 299,
      "descricao": "CONSULTA",
      "medico": 1967,
      "nmmedico": "Rodrigo",
      "diasemana": "SEGUNDA-FEIRA - 03/05/21"
    },
    {
      "opcao": 2,
      "horario": "03/05/21 08:30",
      "service": 84,
      "item": 299,
      "descricao": "CONSULTA",
      "medico": 1967,
      "nmmedico": "Rodrigo",
      "diasemana": "SEGUNDA-FEIRA - 03/05/21"
    }
}

Com isso, recebo o objeto no meu script

        function run(data) {
            const dados = JSON.parse(data);

            let menu = '';
            let lastday = '';

            menu = 'Por favor, Digite o numero correspondente a opção desejada:\n\n';
            dados.menuhorarios.forEach(h => {
                menu += `*${h.opcao}* - ${h.horario} - ${h.nmmedico}\n`;
            });
            return menu;
        }

Desta forma, exibir o menu como texto.

2 Curtidas

Rodrigo entendi! porem estou usando um carrousel, mas acabei fazendo da forma que comentei salvei cara Objeto numa variável e usei elas para apresentar os dados no carrousel.
Obrigado pelo apoio @fadoaglauss e @Rodrigo_Valentim

4 Curtidas