logologo
スタート
マニュアル
開発
プラグイン
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
スタート
マニュアル
開発
プラグイン
API
logologo

クイックスタート

概要
ブロックプラグイン作成
Next Page概要
TIP

このドキュメントはAIによって翻訳されました。不正確な情報については、英語版をご参照ください

#ブロック拡張の概要

NocoBase 2.0では、ブロック拡張の仕組みが大幅に簡素化されました。開発者は、対応する FlowModel 基底クラスを継承し、関連するインターフェースメソッド(主に renderComponent() メソッド)を実装するだけで、ブロックを素早くカスタマイズできます。

#ブロックの分類

NocoBaseでは、ブロックが3つのカテゴリに分類され、設定画面でグループごとに表示されます。

  • データブロック(Data blocks):DataBlockModel または CollectionBlockModel を継承するブロック
  • フィルターブロック(Filter blocks):FilterBlockModel を継承するブロック
  • その他のブロック(Other blocks):BlockModel を直接継承するブロック

ブロックのグループ分けは、対応する基底クラスによって決定されます。分類ロジックは継承関係に基づいており、追加の設定は不要です。

#基底クラスの説明

システムは、拡張のために4つの基底クラスを提供しています。

#BlockModel

基本ブロックモデルは、最も汎用的なブロック基底クラスです。

  • 純粋な表示のみでデータに依存しないブロックに適しています。
  • その他のブロック グループに分類されます。
  • 個別化されたシナリオに適用できます。

#DataBlockModel

**データブロックモデル(データテーブルにバインドしない)**は、カスタムデータソースを持つブロック向けです。

  • データテーブルに直接バインドされず、データ取得ロジックをカスタマイズできます。
  • データブロック グループに分類されます。
  • 外部APIの呼び出し、カスタムデータ処理、統計グラフなどのシナリオに適用できます。

#CollectionBlockModel

コレクションブロックモデルは、データテーブルにバインドする必要があるブロック向けです。

  • データテーブルモデルの基底クラスへのバインドが必要です。
  • データブロック グループに分類されます。
  • リスト、フォーム、カンバンボードなど、特定のデータテーブルに明確に依存するブロックに適用できます。

#FilterBlockModel

フィルターブロックモデルは、フィルター条件を構築するためのブロックです。

  • フィルター条件を構築するためのモデル基底クラスです。
  • フィルターブロック グループに分類されます。
  • 通常、データブロックと連携して動作します。

#基底クラスの選択方法

基底クラスを選択する際は、以下の原則に従ってください。

  • 特定のデータテーブルにバインドする必要がある場合:CollectionBlockModel を優先的に選択します。
  • カスタムデータソースを使用する場合:DataBlockModel を選択します。
  • フィルター条件を設定し、データブロックと連携する場合:FilterBlockModel を選択します。
  • どのように分類すればよいか不明な場合:BlockModel を選択します。

#クイックスタート

カスタムブロックの作成は、たった3つのステップで完了します。

  1. 対応する基底クラス(例:BlockModel)を継承します。
  2. renderComponent() メソッドを実装し、Reactコンポーネントを返します。
  3. プラグインにブロックモデルを登録します。

詳細な例については、ブロックプラグインの作成 を参照してください。