Segui o que o professor passou, console do navegador printa : > [Negociacao] (1).
Contudo ao tentar abrir pra ver o conteudo aparece a mensagem :
console:
*Não foi possível obter as propriedades. O objeto pode não existir mais. adiciona — negociacao-controller.js:19 * Estou usando navegadores : Safari [Versão 15.1 (17612.2.9.1.20) MACOS] e Chrome
*Alguem poderia me ajudar sobre o que estou fazendo errado? *
Meus Códigos.
negociacao-controller.ts
import { Negociacao } from "../models/negociacao.js";
import { Negociacoes } from "../models/negociacoes.js";
export class NegociacaoController {
private inputData: HTMLInputElement;
private inputQuantidade: HTMLInputElement;
private inputValor: HTMLInputElement;
private negociacoes: Negociacoes = new Negociacoes();
constructor () {
this.inputData = document.querySelector('#data')
this.inputQuantidade = document.querySelector('#quantidade')
this.inputValor = document.querySelector('#valor')
}
adiciona() : void {
const negociacao = this.criaNegociacao();
this.negociacoes.adiciona(negociacao)
console.log(" perto da lista negociacao")
console.log(this.negociacoes)
console.log(this.negociacoes.lista());
this.limparFormulario()
}
criaNegociacao() : Negociacao {
const exp = /-/g
const date = new Date(this.inputData.value.replace(exp, ','))
const quantidade = parseInt(this.inputQuantidade.value)
const valor = parseFloat(this.inputValor.value)
return new Negociacao(date, quantidade, valor)
}
limparFormulario(){
this.inputData.value = ''
this.inputQuantidade.value = ''
this.inputValor.value = ''
this.inputData.focus()
}
}
negociacao.ts
export class Negociacao {
private _data: Date;
private _quantidade: number;
private _valor: number;
constructor(data: Date, quantidade: number, valor: number ) {
this._data = data;
this._quantidade = quantidade;
this._valor = valor;
}
get data() : Date {
return this._data;
}
get quantidade() : number {
return this._quantidade;
}
get valor() : number {
return this._valor;
}
get volume() : number {
return this._quantidade * this._valor;
}
}
negociacoes.ts
import { Negociacao } from "./negociacao.js";
export class Negociacoes {
private negociacoes: Array<Negociacao> = [];
adiciona( negociacao: Negociacao){
this.negociacoes.push(negociacao)
console.log( this.negociacoes)
}
lista(): Array<Negociacao>{
return this.negociacoes
}
}