+ constructor(props) {
+ super(props);
+ this.state = {
+ checkedList: {},
+ };
+ this.initializeCheckedList = this.initializeCheckedList.bind(this);
+ this.handleResourceSelect = this.handleResourceSelect.bind(this);
+ }
+ checkBoxColumn: DataColumn<any, any> = {
+ name: 'checkBoxColumn',
+ selected: true,
+ configurable: false,
+ filters: createTree(),
+ render: (uuid) => {
+ return <input type='checkbox' name={uuid} color='primary' onChange={() => this.handleResourceSelect(uuid)}></input>;
+ },
+ };
+ initializeCheckedList = (items: any[]): void => {
+ const checkedList = this.state;
+ for (const uuid in checkedList) {
+ if (checkedList.hasOwnProperty(uuid)) {
+ delete checkedList[uuid];
+ }
+ }
+ items.forEach((uuid) => {
+ if (!checkedList.hasOwnProperty[uuid]) {
+ checkedList[uuid] = false;
+ }
+ });
+ console.log(this.state);
+ };
+
+ handleResourceSelect = (uuid: string) => {
+ const checkedList = this.state;
+ if (!checkedList[uuid]) {
+ checkedList[uuid] = true;
+ } else {
+ checkedList[uuid] = false;
+ }
+ console.log(checkedList);
+ };
+