2017-11-23 4 views
0

私は管理ツールサイトを実装していますが、私はこれに素材uiを使用しています。私は非同期呼び出し(サービス呼び出しのため)を処理するためにredux sagaを使用します。残りの管理者には、dataGridのような非常に有用なコンポーネントがいくつかあります。しかし、それらを使用するために私は思ったほど簡単ではありません。 最初は、これを使用するためにあなたがちょうどそのよう管理コンポーネント内のあなたのアプリケーションをラップする必要があります。私のプロジェクトでadmin-on-restを使用する

const App =() => (
    <Admin restClient={simpleRestClient('http://path.to.my.api/')}> 
     <Resource name="posts" list={PostList} /> 
    </Admin> 
); 

restClientプロパティを私はドキュメントから理解としては必須です。前にも述べたようにDataGridコンポーネントを使いたいのですが、使用しようとすると、ライブラリのmapStateToPros関数でリソースが定義されていないことを示すエラーが表示されます。私は本当に重要なことを見逃すはずです。しかし、私は非常に複雑なのは、単に外部のライブラリを使用するためです。 誰かが以前このライブラリを使用していて、何か助けてくれましたか?私はちょうどデータグリッドを使用する必要があります。ありがとうございました

答えて

1

管理の上での管理は、UIライブラリではありません。それは全体として使用されることを意図した管理フレームワークです。そこには多くのReactデータグリッドライブラリがあります。あなたが完全な管理者を必要としない場合は、admin-on-restを使用しないでください。

0

Datagridを使用するには、MaterialコンポーネントのTableコンポーネントを使用します。

+0

はい、しかし、残りの管理者は材料UIをサポートしており、グリッドには多くの機能があり、最初の意見になりました – user7334203

+0

カスタムアプリケーションのコンポーネントとしてAORを試してみることができます。 https://marmelab.com/admin-on-rest/CustomApp.html –

0

あなたは「admin-on-rest」から何かをインポートするのを忘れていませんか?

アプリはそのような何か(いくつかのコードを逃した)を宣言する必要があります:それはからデータを取得されます。この例では

import React from 'react'; 
import { List, Datagrid, TextField } from 'admin-on-rest' 

export const VendorList = (props) => (
    <List {...props}> 
     <Datagrid> 
      <TextField source="id" /> 
      <TextField source="name" /> 
      <TextField source="description" /> 
     </Datagrid> 
    </List> 
); 

import React, { Component } from 'react'; 
import { jsonServerRestClient, Admin, Resource } from 'admin-on-rest'; 

const restClient = jsonServerRestClient('http://localhost:8000') 

class App extends Component { 
    render() { 
     return (
      <Admin restClient={restClient} > 
       <Resource name="vendors" list={VendorList} /> 
      </Admin> 
     ); 
    } 
} 

そしてVendorListはそのような何かを宣言する必要がありますhttp://localhost:8000/vendors 私はadmin-on-restを使用する際のトラブルに直面することはありませんでした(おそらく、django-restバックエンドで作業している場合のみでしたが、すべて解決されました)。

関連する問題