new Form()
Example
import {Button} from "mvcomponents/button"; import {EMouseEvent} from "mvcomponents/component"; import {Form} from "mvcomponents/container"; import {TextInput, PassWordInput} from "mvcomponents/input"; export interface IDadosDeLogin { login: string; senha: string; } export class LoginForm extends Form<IDadosDeLogin>{ private txtLogin: TextInput; private txtSenha: PassWordInput; private btnOK: Button; constructor () { super(); this.txtLogin = new TextInput("login"); this.txtLogin.setLabel("Login"); this.txtLogin.setName("login"); this.txtLogin.setSize(12); this.txtSenha = new PassWordInput("senha"); this.txtSenha.setLabel("Senha"); this.txtSenha.setName("senha"); this.txtSenha.setSize(12); this.btnOK = new Button("OK"); this.btnOK.addEvent(EMouseEvent.CLICK, () => { console.log(this.recuperarDadosDeLogin()); }); this.btnOK.setSize(12); this.append(this.txtLogin); this.append(this.txtSenha); this.append(this.btnOK); } //recupera os dados do login public recuperarDadosDeLogin(): IDadosDeLogin { return this.getData(); } } //arquivo main.ts import {Button} from "mvcomponents/button"; import {EMouseEvent} from "mvcomponents/component"; import {TextInput, PassWordInput} from "mvcomponents/input"; import {ViewPager, Box, Form} from "mvcomponents/container"; import {LoginForm} from "./login-form"; let boxContainer:Box = new Box(); let form:LoginForm = new LoginForm(); form.setSize(12); boxContainer.append(form); boxContainer.setSize(4); let page:ViewPager = new ViewPager(); page.append(boxContainer); page.appendTo("#conteudo");
Methods
-
clear()
-
Limpa visualmente todos os campos do formulario que estejam marcado como 'cleanable', mas não seta o valor default de cada campo.
- See:
-
- Form.reset
Returns:
- Type
- Form
-
getData()
-
Retorna um objeto T contendo nas propriedades os valores encontrados nos campos do formulário cujas propriedades IInput.getName combinam com as propriedades de T.
Returns:
- Type
- T
-
isValid()
-
Verifica a ultima validação dos métodos IInput.isValid e IInput.isTransient de cada um dos campos adicionados ao formulário.
- See:
-
- IInput.isValid
- IInput.isTransient
Returns:
- Type
- boolean
-
reset()
-
Reseta os campos para os seus valores padrão.
- See:
-
- IInput.reset
Returns:
- Type
- this
-
setData()
-
Associa os valores das propriedades de um objeto literal javascript aos campos do formulário. A premissa é que as propriedades devem combinar os valores atribuidos à propriedade IInput.getName de cada um dos campos adicionados ao formulário.
Returns:
- Type
- Form
Example
//esse código vai atribuir o valor da propriedade `nome` do objeto `usr` //ao campo do formulário cuja a propriedade setName tenha o valor `nome` interface Usuario {nome: string}; let usr:Usuario = {nome: "Bart"}; form.setData<Usuario>(usr);
-
validate()
-
Dispara a validação do formulário retornando uma Promise após a sua conclusão.
- See:
-
- Form.onValidate
Returns:
- Type
- Promise
Example
let form = new Form(); form.append(new InputText()); form.onValidate.subscribe(()=>console.log('formulário válido')); form.validate();