error TS2339: Property '_input' does not exist on type

Copper Contributor
An advice on how to fix these errors
 
error TS2339: Property '_input' does not exist on type 'FileUpload'.
error TS2339: Property '_input' does not exist on type 'FileUpload'.
error TS2339: Property 'context' does not exist on type 'Readonly<{ children?: ReactNode; }> & Readonly<IFileUploadProps>
 
export default class FileUpload extends React.Component<IFileUploadProps, {}> {
  public render(): React.ReactElement<IFileUploadProps> {
    return (
      <div className={styles.fileUpload}>
        <div className={styles.container}>
          <div className={styles.row}>
            <div className={styles.column}>
              <span className={styles.title}>SharePoint!</span>
              <p className={styles.subTitle}> Web Parts.</p>
              <p className={styles.description}>{escape(this.props.description)}</p>
              <a href="https://aka.ms/spfx" className={styles.button}>
                <span className={styles.label}>Learn more</span>
              </a>
              <input
                type="file"
                ref={(elm=> {
                  this._input = elm;
                }}
              />
              <p>
                <button onClick={() => this.uploadFileFromControl()}>Upload</button>
              </p>
            </div>
          </div>
        </div>
      </div>
    );
  }
  private uploadFileFromControl() {
    //Get the file from File DOM
    var files = this._input.files;
    var file = files[0];
    //Upload a file to the SharePoint Library
    sp.web
      .getFolderByServerRelativeUrl(this.props.context.pageContext.web.serverRelativeUrl + '/OrderLibrary')
      .files.add(file.namefiletrue)
      .then((data=> {
        alert('File uploaded sucessfully');
      })
      .catch((error=> {
        alert('Error is uploading');
      });
  }
}
0 Replies