AllenFang / react-bootstrap-table

A Bootstrap table built with React.js
https://allenfang.github.io/react-bootstrap-table/
MIT License
2.23k stars 782 forks source link

propert filter saying SelectFilter type is incompatible #1991

Open jaykerz opened 6 years ago

jaykerz commented 6 years ago

(197,193): Types of property 'filter' are incompatible. Type '{ type: "SelectFilter"; options: { 0: string; 1: string; }; }' is not assignable to type 'Filter | undefined'. Object literal may only specify known properties, and 'options' does not exist in type 'Filter | undefined'. stack_frame_overlay_proxy_console @ index.js:2178 handleErrors @ webpackHotDevClient.js:178 ./node_modules/react-dev-utils/webpackHotDevClient.js.connection.onmessage @ webpackHotDevClient.js:211 ./node_modules/sockjs-client/lib/event/eventtarget.js.EventTarget.dispatchEvent @ eventtarget.js:51 (anonymous) @ main.js:274 ./node_modules/sockjs-client/lib/main.js.SockJS._transportMessage @ main.js:272 ./node_modules/sockjs-client/lib/event/emitter.js.EventEmitter.emit @ emitter.js:50 (anonymous) @ sender-receiver.js:23 ./node_modules/sockjs-client/lib/event/emitter.js.EventEmitter.emit @ emitter.js:50 (anonymous) @ polling.js:30 ./node_modules/sockjs-client/lib/event/emitter.js.EventEmitter.emit @ emitter.js:50 ./node_modules/sockjs-client/lib/transport/receiver/xhr.js.XhrReceiver._chunkHandler @ xhr.js:49 ./node_modules/sockjs-client/lib/event/emitter.js.EventEmitter.emit @ emitter.js:50 xhr.onreadystatechange @ abstract-xhr.js:107 XMLHttpRequest.send (async) ./node_modules/sockjs-client/lib/transport/browser/abstract-xhr.js.AbstractXHRObject._start @ abstract-xhr.js:132 (anonymous) @ abstract-xhr.js:21 setTimeout (async) AbstractXHRObject @ abstract-xhr.js:20 XHRCorsObject @ xhr-cors.js:8 XhrReceiver @ xhr.js:19 ./node_modules/sockjs-client/lib/transport/lib/polling.js.Polling._scheduleReceiver @ polling.js:26 Polling @ polling.js:18 SenderReceiver @ sender-receiver.js:20 AjaxBasedTransport @ ajax-based.js:44 XhrStreamingTransport @ xhr-streaming.js:15 ./node_modules/sockjs-client/lib/main.js.SockJS._connect @ main.js:219 ./node_modules/sockjs-client/lib/main.js.SockJS._transportClose @ main.js:299 ./node_modules/sockjs-client/lib/main.js.SockJS._transportTimeout @ main.js:233 setTimeout (async) ./node_modules/sockjs-client/lib/main.js.SockJS._connect @ main.js:213 ./node_modules/sockjs-client/lib/main.js.SockJS._receiveInfo @ main.js:193 g @ emitter.js:30 ./node_modules/sockjs-client/lib/event/emitter.js.EventEmitter.emit @ emitter.js:50 (anonymous) @ info-receiver.js:67 g @ emitter.js:30 ./node_modules/sockjs-client/lib/event/emitter.js.EventEmitter.emit @ emitter.js:50 (anonymous) @ info-ajax.js:37 g @ emitter.js:30 ./node_modules/sockjs-client/lib/event/emitter.js.EventEmitter.emit @ emitter.js:50 xhr.onreadystatechange @ abstract-xhr.js:124 XMLHttpRequest.send (async) ./node_modules/sockjs-client/lib/transport/browser/abstract-xhr.js.AbstractXHRObject._start @ abstract-xhr.js:132 (anonymous) @ abstract-xhr.js:21 setTimeout (async) AbstractXHRObject @ abstract-xhr.js:20 XHRLocalObject @ xhr-local.js:8 InfoAjax @ info-ajax.js:19 ./node_modules/sockjs-client/lib/info-receiver.js.InfoReceiver._getReceiver @ info-receiver.js:36 ./node_modules/sockjs-client/lib/info-receiver.js.InfoReceiver.doXhr @ info-receiver.js:56 (anonymous) @ info-receiver.js:25 setTimeout (async) InfoReceiver @ info-receiver.js:24 SockJS @ main.js:121 ./node_modules/react-dev-utils/webpackHotDevClient.js @ webpackHotDevClient.js:61 webpack_require @ bootstrap 46286af25b0bfc61f0a3:678 fn @ bootstrap 46286af25b0bfc61f0a3:88 0 @ registerServiceWorker.ts:123 webpack_require @ bootstrap 46286af25b0bfc61f0a3:678 ./node_modules/@allenfang/react-toastr/lib/ToastContainer.js.Object.defineProperty.value @ bootstrap 46286af25b0bfc61f0a3:724 (anonymous) @ bootstrap 46286af25b0bfc61f0a3:724

The component is written in tyepscript

    const rejectedType = {
        0: 'No',
        1: 'Yes'
    };

    function enumFormatter(cell: number, row: any, enumObject: string) {

            return enumObject[cell];
        };

and the tableheadercouln is writtnen as such..

<TableHeaderColumn dataField='RejectedNumeric' filterFormatted={true} dataFormat={enumFormatter} formatExtraData={rejectedType} filter={{ type: 'SelectFilter', options: rejectedType}}>Product Quality