Galera, boa noite!! Então meu código não está mostrando as mensagens em tela, eu já revisei mas ainda não consegui achar o erro... Poderiam me ajudar.
// código HTML
<h1 class="text-center">Negociações</h1>
<div id="mensagem-view"></div>
// Imports do HTML
<script src="js/app/models/Negociacao.js"></script>
<script src="js/app/controllers/NegociacaoController.js"></script>
<script src="js/app/helpers/DateHelper.js"></script>
<script src="js/app/models/ListaNegociacoes.js"></script>
<script src="js/app/view/View.js"></script>
<script src="js/app/view/NegociacoesView.js"></script>
<script src="js/app/models/Mensagem.js"></script>
<script src="js/app/view/MensagemView.js"></script>
<script src="js/app/services/ProxyFactory.js"></script>
<script src="js/app/helpers/Bind.js"></script>
//view do JS
class MensagemView extends View{
constructor(elemento){
super(elemento);
}
template(model){
return model.texto ? `<p class="alert alert-info>${model.texto}</p>` : '<p></p>';
}
}
//Model
class Mensagem{
constructor(texto =''){
this._texto = texto;
}
get texto(){
return this._texto;
}
set texto(texto){
this._texto = texto;
}
}
//Controller
class NegociacaoController {
constructor() {
this._mensagem = new Bind(new Mensagem(), new MensagemView($('#mensagem-view')),'texto');
}
adiciona(event) {
this._mensagem.texto = "Negociação Adicionada com sucesso!!";
}
apaga() {
this._mensagem.texto = 'Negociações Apagadas com sucesso!!';
}
//Bind
class Bind{
constructor(model,view,...props){
let proxy = ProxyFactory.create(model, props,model => view.update(model));
view.update(model);
return proxy;
}
}
//Proxy
class ProxyFactory{
set(target, prop, value, receiver){
if(props.includes(prop)) acao(target);
let retorno = Reflect.set(target, prop, value, receiver);
return retorno;
}
Se quiserem dar uma olhada no código completo o projeto está no github github-tnazevedo