2.8.1 • Published 2 years ago
@xlit/form v2.8.1
@xlit/form
Lit reactive component for form binding and validation
Installation
npm i @xlit/form
Getting started
import { LitElement, html } from 'lit';
import { customElement } from 'lit/decorators.js';
import { Form, FormError } from '@xlit/form';
import { StringType } from '@xlit/schema';
@customElement('page-foo')
class PageFoo extends LitElement {
private form = new Form(this, {
foo: new StringType().required(),
bar: new StringType().required(),
}, (model) => {
// do something with model here
// to set field error throw FormError
if (err) {
throw new FormError('server err', {
foo: 'something happened with foo',
bar: 'something happened with bar',
});
}
});
render (): unknown {
return html`
<form @submit="${this.form.bindSubmit()}">
<div>
<label>Foo</label>
<input type="text" ${this.form.bindField('foo')}>
<span class="form-text">${this.form.error('foo')}</span>
</div>
<div>
<label>Bar</label>
<input type="text" ${this.form.bindField('bar')}>
<span class="form-text">${this.form.error('bar')}</span>
</div>
<div>
<input type="submit" value="Submit" .disabled="${!this.form.ok}">
</div>
</form>
`;
}
}
2.5.0
2 years ago
2.7.0
2 years ago
2.6.1
2 years ago
2.6.0
2 years ago
2.5.1
2 years ago
2.8.1
2 years ago
2.7.2
2 years ago
2.6.3
2 years ago
2.8.0
2 years ago
2.7.1
2 years ago
2.6.2
2 years ago
2.6.11
2 years ago
2.6.12
2 years ago
2.6.13
2 years ago
2.6.14
2 years ago
2.6.10
2 years ago
2.7.4
2 years ago
2.6.5
2 years ago
2.7.3
2 years ago
2.6.4
2 years ago
2.6.7
2 years ago
2.7.5
2 years ago
2.6.6
2 years ago
2.6.9
2 years ago
2.6.8
2 years ago
1.0.0
2 years ago
2.3.0
2 years ago
2.2.1
2 years ago
2.0.3
2 years ago
2.2.0
2 years ago
2.0.2
2 years ago
2.4.0
2 years ago
2.3.1
2 years ago
2.2.2
2 years ago
2.0.4
2 years ago
2.1.0
2 years ago
2.0.1
2 years ago
2.0.0
2 years ago
0.2.1
2 years ago
0.2.0
2 years ago
0.2.2
2 years ago
0.1.10
4 years ago
0.1.9
4 years ago
0.1.8
4 years ago