add form
This commit is contained in:
parent
45dc0c422c
commit
6ef9545b18
27
src/form/index.ts
Normal file
27
src/form/index.ts
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
type FormValue<T = any> = {} & T;
|
||||||
|
class From<T = any> {
|
||||||
|
formData: FormValue<T>;
|
||||||
|
form: HTMLFormElement;
|
||||||
|
constructor() {
|
||||||
|
console.log('From');
|
||||||
|
}
|
||||||
|
getValues() {
|
||||||
|
return this.formData;
|
||||||
|
}
|
||||||
|
listen() {
|
||||||
|
this.form.addEventListener('submit', this.handleSubmit.bind(this));
|
||||||
|
}
|
||||||
|
handleSubmit(event: Event) {
|
||||||
|
event.preventDefault();
|
||||||
|
const formData = new FormData(this.form);
|
||||||
|
const values = Object.fromEntries(formData.entries());
|
||||||
|
// this.formData = values;
|
||||||
|
}
|
||||||
|
onChanges() {
|
||||||
|
this.form.addEventListener('change', this.handleChange.bind(this));
|
||||||
|
}
|
||||||
|
handleChange(event: Event) {
|
||||||
|
const target = event.target as HTMLInputElement;
|
||||||
|
this.formData[target.name] = target.value;
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user