bs react admin
1.0.0
반응 관리를 위한 BuckleScript 바인딩.
? 이것은 WIP이며 아직 모든 것이 지원되는 것은 아닙니다. ?
누락된 내용이 있으면 언제든지 이슈나 PR을 작성해 주세요.
또한, React-admin이 ReasonML 프로젝트와 함께 작동하도록 하기 위해 많은 유형이 지나치게 허용적입니다. 향후 릴리스에서는 이러한 유형이 훨씬 더 엄격해지기를 바랍니다.
npm install --save @ctbucha/bs-react-admin
그런 다음 bsconfig.json 의 bs-dependencies 에 @ctbucha/bs-react-admin 추가하세요.
{
...
"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, "수락", "application/json");
헤더 = 보자
headersDict |> Fetch.HeadersInit.makeWithDict |> Fetch.Headers.makeWithInit;
BsReactAdmin.FetchUtils.headersSet(params, headers);
BsReactAdmin.FetchUtils.fetchJson(url, params);};let dataProvider =
BsRaDataJsonServer.getRaDataJsonServer(
~apiUrl="http://jsonplaceholder.typicode.com",~httpClient=myHttpClient,(),
);만들자 = _children => {
...요소,
렌더링: _self => BsReactAdmin.(
<div>
<관리자 데이터 제공자>
<리소스 이름="게시물" 목록=PostList.toReactJs />
</관리자>
</div>
),
}; /* PostList.re */let 컴포넌트 = ReasonReact.statelessComponent("PostList");let make = (props, _children) => {
...요소,
렌더링: _self => BsReactAdmin.(
<div>
<목록 소품>
<데이터그리드>
<TextField 소스="id" />
<TextField 소스="제목" />
<TextField 소스="본체" />
</데이터그리드>
</목록>
</div>
),};/* React-admin이 이를 ReactJS 구성 요소로 처리하므로 ReasonReact * 구성 요소 대신 ReactJS 구성 요소로 Resource에 전달해야 합니다. */let toReactJs =
ReasonReact.wrapReasonForJs(~comComponent, jsProps => make(jsProps, [||]));