Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Emulando o $ com querySelectorAll e enviando POST

Pessoal apenas para demonstrar que alem do metodo bind para dar um get nos elementos do formularios tambem é possivel utlizando uma bliblioteca propria. O que acharam desta forma?

          const sendPost = ( event ) => {
                event.preventDefault() 
                console.log( 'Enviando post' );

            const $ = ( selector, context = document )  =>  {
                let el = Array.prototype.slice.call( context.querySelectorAll( selector ))
                return {
                    in: ( pos ) => el [ pos ]
                }
            }

            inputData = $( '#data' ).in( 0 ) 
            inputQuantidade = $( '#quantidade' ).in( 0 )
            inputValor = $( '#valor' ).in( 0 )

            const negociacao = {
                data: inputData.value,
                quantidade: inputQuantidade.value, 
                valor: inputValor.value 
            }    

            const xhr = new XMLHttpRequest()
            xhr.open( 'POST', '/negociacoes', true )
            xhr.setRequestHeader( 'Content-type', 'application/json' )

            xhr.onreadystatechange = () => {
                if( xhr.readyState === 4 ) {
                    if( xhr.status === 200 ) {
                        inputData.value = ''
                        inputQuantidade.value = 1 
                        inputValor.value = 0.0 
                        inputData.focus() 
                        window.alert( 'Negociação enviada com sucesso' ) 
                        console.warn( 'Enviado com sucesso ' );    
                    }else {
                        window.alert( `Não foi possível enviar a negociação: ${xhr.responseText}` )
                    }
                }
            }
            xhr.send( JSON.stringify( negociacao ))
        }
1 resposta
solução!

Fala aí Douglas, beleza? Parabéns pela solução, realmente no mundo de desenvolvimento geralmente vai existir mais de um jeito para resolver o problema, dificilmente você vai ver cenários onde apenas um jeito pode e deve ser feito.

O importante é conseguir a solução e atingir o objetivo final (respeitando boas práticas e tals) e você conseguiu.

Muito legal ter buscado e feito de forma diferente.

Espero ter ajudado.