Estou recebendo o seguinte erro ao passar um 0
em uma variável.
Erro: erro de rede: parâmetros ausentes para executar a consulta, especifique-o nos parâmetros da consulta ou use uma diretiva de exportação
Se, em vez disso, eu usar uma corda, funciona
Eu depurei o código e encontrei o problema na função replaceParam
que está verificando !value
onde (eu acho 😃) deveria estar verificando null
/ undefined
valores.
var replaceParam = function (endpoint, name, value) {
if (!value || !name) {
return endpoint;
}
return endpoint.replace(":" + name, value);
};
Vou enviar um PR
Boa pegada, a maneira datilografada para isso é
if (value != null || name != null)
Estou ansioso para fundir seu PR! :)
Adicione um teste de unidade para que possamos capturar quaisquer regressões futuras.
Está claro para mim que 0
e false
representam valores reais e undefined
faltam, mas não tenho certeza sobre null
valores.
O que você acha @fbartho?
@gaguirre Desculpe ter perdido sua resposta! Enviei seu código como está. Acho que provavelmente deveríamos apoiar a transferência de null
e deixar uma camada diferente lidar com isso.
Você já viu a função pathBuilder
? Esse é o código fornecido pelo usuário que poderia se preocupar com a distinção entre undefined
e null
, ou poderia realmente usar null
forma útil.
Você acha que devemos abrir um novo tíquete para rastrear esse caso?
@fbartho não tem problema! Eu concordo que null
é um caso válido e eu considerei isso no PR.
A única coisa que faltava eram os casos de teste para o caso undefined
, mas o comportamento eu acho que é o correto: vai lançar um erro _Parâmetro ausente_. 👍