1
resposta

Uncaught TypeError: Cannot read property 'transaction' of undefined at adiciona

Já olhei várias vezes o código, refiz novamente, olhei outros foruns com o mesmo problema, apilquei as possíveis solução mas ainda continua com esse erro. Poderia me ajduar?

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>aprendendo indexDB</title>
</head>

<body>

    <script src="js/app/models/Negociacao.js"></script>

    <script>

        var connection;

        var openRequest = window.indexedDB.open('aluraframe', 4);

        openRequest.onupgradeneeded = e => {

            console.log('cria ou altera um banco já existente');

            var minhaConnection = e.target.result;

            if (minhaConnection.objectStoreNames.contains('negociacoes')) {
                minhaConnection.deleteObjectStore('negociacoes');
            }

            minhaConnection.createObjectStore('negociacoes', { autoIncrement: true });
        };



        openRequest.onsuccess = e => {

            console.log('conexão obtida com sucesso');

            conection = e.target.result;
        }

        openRequest.onerror = e => {

            console.log(e.target.errro);
        };


        function adiciona() {

            var transaction = connection.transaction(['negociacoes'], 'readwrite');

            var store = transaction.objectStore('negociacoes');

            var negociacao = new Negociacao(new Date(), 1, 200);

            var request = store.add(negociacao);

            openRequest.onsuccess = e => {
                console.log("Conexão obtida com sucesso");
                connection = e.target.result;
            };

            openRequest.onerror = e => {

                console.log('Nao foi possível incluir a negociação ');


            };

        };





    </script>

</body>

</html>
1 resposta

Fala ai Cesar, tudo bem? Olhando o código assim é bem complicado, posso deixar passar algum detalhe que a olho seja dificil pegar.

Consegue compartilhar o projeto completo? Assim eu consigo simular o problema por aqui e analisá-lo com mais calma.

Pode compartilhar através do Github ou Google Drive (zipado).

Fico no aguardo.