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

Não consigo importar

Olá, bom dia, meu NegociacaoController.ts está com o mesmo código do vídeo

export class NegociacaoController {
    private inputData;
    private inputQuantidade;
    private inputValor;
    
    constructor() {
        this.inputData = document.querySelector('#data');
        this.inputQuantidade = document.querySelector('#quantidade');
        this.inputValor = document.querySelector('#valor');
    }
    
    adiciona() {
        console.log(this.inputData);
        console.log(this.inputQuantidade);
        console.log(this.inputValor);
    }
}

meu app.ts também

import { NegociacaoController } from "./controllers/negociacao-controller.js";

const controller = new NegociacaoController();
const form = document.querySelector(".form");
form.addEventListener('submit', event => {
    event.preventDefault();
    controller.adiciona();  
});

porém não entendo, no navegador eu recebo "Uncaught SyntaxError: Cannot use import statement outside a module", por que ele não está conseguindo importar?

1 resposta
solução!

Opa Gabriel, tudo certo?

O erro em questão está relacionado à forma como o navegador interpreta o código JavaScript e o uso de módulos, o import e export são recursos do ES Modules e Nativamente o JavaScript ainda não entende, ou seja, se você tentar um import dentro do script ele da erro.

Uma possível solução é verificar se esse arquivo está sendo interpretado como um módulo. Sugiro que verifique se a adição no seu package.json do “type” como “module” resolverá o problema.

{
  "type": "module"
}

Fico à disposição.

Tenha um bom dia e bons estudos.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software