-
-
Save ramiresnas/dfed90080d7a9e8bbf62436a158d7f46 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// View.js | |
class View{ | |
constructor(selector){ | |
this.element = document.querySelector(selector) | |
} | |
//deve ser reescrito | |
template(model){ | |
throw new Error("abstract method must be override") | |
} | |
update(model){ | |
this.element.innerHTML = this.template(model) | |
} | |
} | |
//MemberView.js | |
class MemberView extends View{ | |
constructor(selector){ | |
super(selector) | |
} | |
//uma view simples com uma acao do controller atrelada a um evento de click | |
template(member){ | |
return `<h1> Ramires </h1> | |
<a href="#logout" onClick="loginController.logOut(event)"> | |
logout | |
</a> | |
` | |
} | |
} | |
//MemberController | |
class MemberController{ | |
constructor(selector){ | |
this.memberView = new MemberView(selector) | |
this.memberView.update() //mostra a view ao criar um memberController | |
} | |
} | |
//index.html | |
... | |
<div id="member"> </div> | |
<script> | |
const memberController = new MemberController("#member") | |
</script> | |
.... |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment