Tìm kiếm trang web

javascript - Cách sử dụng phương thức document.getElementById() trong TypeScript?


Tôi đang cố gắng đặt lại Biểu mẫu HTML để xóa tất cả các giá trị trong các trường nhập dữ liệu bằng cách;

document.getElementById('myForm').reset(); 

Nhưng tôi có thể sử dụng điều đó trong TypeScript, nó đang báo lỗi cho tôi rằng document.getElementById('myForm') có thể là null

Làm thế nào tôi có thể giải quyết vấn đề này?

Câu trả lời #1

Typescript sẽ buộc bạn phải kiểm tra giá trị không phải là null nếu bạn sử dụng tùy chọn strictNullChecks (hoặc strict bao gồm strictNullChecks). Bạn có thể thực hiện kiểm tra hoặc sử dụng phép khẳng định không null (!). Ngoài ra, bạn cũng sẽ cần sử dụng phép khẳng định kiểu để khẳng định phần tử html là một HTMLFormElement vì theo mặc định nó sẽ chỉ là một HtmlElement và reset chỉ có trên HTMLFormElement

Chỉ là một khẳng định Khẳng định:

(document.getElementById('myForm') as HTMLFormElement).reset();

Khẳng định có kiểm tra (khuyến nghị):

let form = document.getElementById('myForm')
if(form) (form as HTMLFormElement).reset(); 

Khẳng định không null (nếu bạn chỉ muốn truy cập thành viên HtmlElement):

document.getElementById('myForm')!.click()

Bài viết liên quan