В настоящее время я занимаюсь разработкой веб-части SPFx в React. По сути, я создал форму, которая отправляется в список SharePoint. В этой форме есть некоторые поля даты, для которых я использовал https://github.com/Hacker0x01/react-datepicker, чтобы отобразить поле даты.
Мой код выглядит следующим образом:
import DatePicker from "react-datepicker";
import "react-datepicker/dist/react-datepicker.css"
handleChange = date => {
this.setState({
startDate: date
});
};
public render(): void {
if (!this._initComplete) {
return;
}
const refiner = React.createElement('div',{style:{paddingTop:'20px',clear:'both'}},
React.createElement('div',{style:{float:'left',paddingTop:'20px'}},
React.createElement('div',{},'Date from: '),
React.createElement(DatePicker,{onChange:this.handleChange, selected:SearchBoxWebPart.state.startDate}),
React.createElement('div',{},'Date to: '),
React.createElement('input',{type:'text'})),
React.createElement('div', {style:{float:'right',width:'20%',textAlign:'center'}},
React.createElement('h4', {}, 'Content'),
React.createElement('div', {style:{float:'right',width:"100%"}},
React.createElement('div',{style:{float:"left"}},
React.createElement('div',{},'Check1'),
React.createElement('input', {id:'Permit',type:'checkbox',defaultChecked:SearchBoxWebPart.state.permitChecked,onChange:this.onChangePermit.bind(this)})),
React.createElement('div',{style:{float:"right"}},
React.createElement('div',{},'Check2'),
React.createElement('input', {type:'checkbox',defaultChecked:SearchBoxWebPart.state.fileChecked,onChange:this.onChangeFiles.bind(this)})))
));
const container = React.createElement('div', {}, [refiner]);
ReactDom.render(container, this.domElement);
}
Однако это имеет проблемы с this.setState
и не распознает его, поэтому, очевидно, он не работает. Я застрял с тем, что делать сейчас, я совершенно новый, чтобы реагировать, поэтому я, вероятно, сделал несколько других ошибок в этом коде. Я попытался использовать, this.handleChange.bind(this)
функция затем любит this.setstate
единственная проблема, то я не уверен, как получить новую дату, чтобы установить состояние. Любая помощь будет принята с благодарностью.