Univer Bases API
Univer Bases アプリケーションで Facade API を使用する方法を説明します。
Facade API は、アプリケーションから Bases モデルを操作するためのレイヤーです。Base、テーブル、フィールド、レコード、ビュー、フィルター、並べ替え、グループ、選択範囲の作成や、UI の移動といった一般的な操作に使用できます。
注意
Base モデルの変更は同期処理です。UI のアクティブ化メソッドは Promise を返すため await してください。
Facade エントリを有効にする
アプリケーションで使用する各 Bases 機能の Facade エントリをインポートします。
TypeScript
import { FUniver } from '@univerjs/core/facade'import '@univerjs-pro/bases/facade'import '@univerjs-pro/bases-ui/facade'Univer インスタンスと必要なプラグインを登録してから、API オブジェクトを作成します。
TypeScript
const univerAPI = FUniver.newAPI(univer)Base を作成・取得する
Facade レイヤーから Base ユニットを作成するには、createBase を使用します。より低レベルのセットアップコードでは、univer.createUnit(UniverInstanceType.UNIVER_BASE, snapshot) を使用してユニットを作成します。
TypeScript
const base = univerAPI.createBase({ id: 'base-demo', name: 'Base Demo',})const activeBase = univerAPI.getActiveBase()const sameBase = univerAPI.getBase(base.getId())テーブルを作成する
TypeScript
const table = base.insertTable('Tasks', { primaryFieldName: 'Title' })const status = table.addField('Status', univerAPI.Enum.BaseFieldType.SingleSelect)レコードを操作する
TypeScript
const record = table.addRecord({ Title: 'Write docs', Status: 'In progress',}, univerAPI.Enum.BaseFieldKeyEnum.Name)record.setValue(status.getId(), 'Done')UI の状態を操作する
@univerjs-pro/bases-ui/facade は、テーブル/ビューのアクティブ化、選択、スクロール、編集、パネル操作のための UI API を追加します。
TypeScript
const baseUI = univerAPI.getBaseUI()const view = table.getViews()[0]if (!view) throw new Error('No table view')await baseUI.activateTable(table.getId())await baseUI.activateView(view.getId())baseUI.setSelection({ type: 'grid-record', tableId: table.getId(), viewId: view.getId(), recordId: record.getId(),})関連資料
このガイドはいかがですか?