bs react admin
1.0.0
Привязки BuckleScript для реагирования-администратора.
? Это WIP, пока не все поддерживается. ?
Не стесняйтесь создавать проблему или пиариться, если вы обнаружите, что чего-то не хватает.
Кроме того, многие типы слишком либеральны в попытке просто заставить реагирование администратора работать с проектами ReasonML. Будем надеяться, что в будущих выпусках эти типы будут намного более строгими.
npm install --save @ctbucha/bs-react-admin
Затем добавьте @ctbucha/bs-react-admin
в bs-dependencies
в вашем bsconfig.json
:
{ ... "bs-dependencies": ["@ctbucha/bs-react-admin"] }
/* App.re */let компонент = ReasonReact.statelessComponent("App");let myHttpClient = (url, _params) => { let headersDict = Js.Dict.empty(); Js.Dict.set(headersDict, «Принять», «приложение/json»); пусть заголовки = headersDict |> Fetch.HeadersInit.makeWithDict |> Fetch.Headers.makeWithInit; BsReactAdmin.FetchUtils.headersSet(параметры, заголовки); BsReactAdmin.FetchUtils.fetchJson(url, params);};let dataProvider = BsRaDataJsonServer.getRaDataJsonServer( ~apiUrl="http://jsonplaceholder.typicode.com",~httpClient=myHttpClient,(), );let make = _children => { ... компонент, рендеринг: _self => BsReactAdmin.( <дел> <Поставщик данных администратора> <Resource name="posts" list=PostList.toReactJs /> </Админ> </div> ), };
/* PostList.re */let компонент = ReasonReact.statelessComponent("PostList");let make = (props, _children) => { ... компонент, рендеринг: _self => BsReactAdmin.( <дел> <Список реквизита> <Сетка данных> <TextField source="id" /> <TextField source="title" /> <TextField source="body" /> </Сетка данных> </Список> </div> ),};/* Необходимо передать это в Resource как компонент ReactJS вместо компонента ReasonReact *, поскольку React-admin обрабатывает это как компонент ReactJS. */let toReactJs = ReasonReact.wrapReasonForJs(~компонент, jsProps => make(jsProps, [||]));