[英]error TS2339: Property '_input' does not exist on type 'FileUpload
I am attempting to run the below code but experiencing these errors我正在尝试运行以下代码但遇到这些错误
Property '_input' does not exist on type 'FileUpload'. Property '_input' does not exist on type 'FileUpload'. 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.name, file, true)
.then((data) => {
alert('File uploaded sucessfully');
})
.catch((error) => {
alert('Error is uploading');
});
}
}
Sample demo to declare a ref:声明 ref 的示例演示:
//define a variable in component
protected ppl;
<PeoplePicker
context={this.props.context}
titleText="People Picker"
personSelectionLimit={3}
groupName={''}
showtooltip={false}
isRequired={false}
disabled={false}
selectedItems={this._getPeoplePickerItems}
defaultSelectedUsers={this.state.PeoplePickerDefaultItems}
showHiddenInUI={false}
principalTypes={[PrincipalType.User]}
resolveDelay={1000}
ref={c => (this.ppl = c)}
/>
<button onClick={() => {this.ppl.
To use webpart context, you need send it from webpart class.要使用 webpart 上下文,您需要从 webpart class 发送它。
const element: React.ReactElement<IPnpReactProps > = React.createElement(
PnpReact,
{
description: this.properties.description,
context:this.context
}
);
Component property.组件属性。
import { WebPartContext } from '@microsoft/sp-webpart-base';
export interface IPnpReactProps {
description: string;
context: WebPartContext;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.