RIOT.JS - Acessando DOM
Podemos acessar elementos HTML usando o objeto refs. Como primeira etapa, adicionamos um atributo ref a um elemento DOM e o acessamos usando this.ref no bloco de script da tag.
Attach ref - Adicione o atributo ref a um elemento DOM.
<button ref = "clickButton">Click Me!</button>
Use the refs object- Agora use o objeto refs no evento de montagem. Este evento é disparado quando o RIOT monta a tag personalizada e preenche o objeto refs.
this.on("mount", function() {
this.refs.clickButton.onclick = function(e) {
console.log("clickButton clicked");
return false;
};
})
Exemplo
A seguir está o exemplo completo.
custom6Tag.tag
<custom6Tag>
<form ref = "customForm">
<input ref = "username" type = "text" value = "Mahesh"/>
<button ref = "clickButton">Click Me!</button>
<input type = "submit" value = "Submit" />
</form>
<script>
this.on("mount", function() {
this.refs.clickButton.onclick = function(e) {
console.log("clickButton clicked");
return false;
};
this.refs.customForm.onsubmit = function(e) {
console.log("Form submitted");
return false;
};
})
</script>
</custom6Tag>
custom6.htm
<html>
<head>
<script src = "https://cdnjs.cloudflare.com/ajax/libs/riot/3.13.2/riot+compiler.min.js"></script>
</head>
<body>
<custom6Tag></custom6Tag>
<script src = "custom6Tag.tag" type = "riot/tag"></script>
<script>
riot.mount("custom6Tag");
</script>
</body>
</html>
Isso produzirá o seguinte resultado -