Olá pessoal! Meu código está apresentando undefined na parte do adiciona() e depois, ao seguir, agora dá erro com o value, mas os erros são diferentes dos demais reportados:
Uncaught TypeError: Cannot read properties of undefined (reading 'value')
at NegociacaoController.adiciona (negociacao-controller.js:9:58)
at HTMLFormElement.<anonymous> (app.js:6:16)
adiciona @ negociacao-controller.js:9
(anonymous) @ app.js:6
Segue meu código:
negociacao-controller.ts
import { Negociacao } from "../models/negociacao.js";
export class NegociacaoController {
private inputData;
private inputQuantidade;
private inputValor;
construtor(){
this.inputData = document.querySelector('#data');
this.inputQuantidade = document.querySelector('#quantidade');
this.inputValor = document.querySelector('#valor');
}
adiciona() {
const negociacao = new Negociacao(
this.inputData.value,
this.inputQuantidade.value,
this.inputValor.value
);
console.log(negociacao);
}
}
negociacao.ts
export class Negociacao {
private _data;
private _quantidade;
private _valor;
constructor(data, quantidade, valor){
this._data = data;
this._quantidade = quantidade;
this._valor = valor;
}
get data() {
return this._data;
}
get quantidade() {
return this._quantidade;
}
get valor() {
return this._valor;
}
get volume() {
return this._quantidade * this._valor;
}
}
app.ts
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 favor, alguém pode me ajudar? Obrigada desde já!