bs react admin
1.0.0
Enlaces de BuckleScript para reaccionar-admin.
? Este es un WIP, todavía no todo es compatible. ?
No dudes en crear un problema o unas relaciones públicas si encuentras que falta algo.
Además, muchos de los tipos son demasiado permisivos en un intento de hacer que reaccionar-admin funcione con proyectos de ReasonML. Con suerte, estos tipos serán mucho más estrictos en futuras versiones.
npm install --save @ctbucha/bs-react-admin
Luego agregue @ctbucha/bs-react-admin
a bs-dependencies
en su bsconfig.json
:
{ ... "bs-dependencies": ["@ctbucha/bs-react-admin"] }
/* App.re */let componente = ReasonReact.statelessComponent("App");let myHttpClient = (url, _params) => { let headersDict = Js.Dict.empty(); Js.Dict.set(headersDict, "Aceptar", "aplicación/json"); dejar encabezados = headersDict |> Fetch.HeadersInit.makeWithDict |> Fetch.Headers.makeWithInit; BsReactAdmin.FetchUtils.headersSet (parámetros, encabezados); BsReactAdmin.FetchUtils.fetchJson(url, parámetros);};let dataProvider = BsRaDataJsonServer.getRaDataJsonServer( ~apiUrl="http://jsonplaceholder.typicode.com",~httpClient=myHttpClient,(), );vamos a hacer = _niños => { ...componente, renderizar: _self => BsReactAdmin.( <div> <Proveedor de datos de administrador> <Nombre del recurso="publicaciones" lista=PostList.toReactJs /> </Admin> </div> ), };
/* PostList.re */let componente = ReasonReact.statelessComponent("PostList");let make = (props, _children) => { ...componente, renderizar: _self => BsReactAdmin.( <div> <Listar accesorios> <cuadrícula de datos> <TextField fuente="id" /> <TextField fuente="título" /> <TextField fuente="cuerpo" /> </cuadrícula de datos> </Lista> </div> ),};/* Es necesario pasar esto a Resource como un componente ReactJS en lugar de un componente ReasonReact * ya que react-admin maneja esto como un componente ReactJS. */let toReactJs = ReasonReact.wrapReasonForJs(~componente, jsProps => make(jsProps, [||]));