新機能
開発の学習コストを削減し、より良いフロントエンド開発体験を提供するために、私たちは過去数ヶ月にわたりフロントエンドコアの再構築を段階的に進めてきました。

今回は、v0.17 では UI Schema デザイナーに関連する SchemaInitializer と SchemaSettings が再構築されました。


ユーザーが始めやすくするために、私たちはドキュメントの各セクションを再整理しました。
- プラグイン開発(全面改訂済み、公開済み)
- API リファレンス / クライアント(新しいセクション、すでに公開)
- ユーザーマニュアル(全面改訂、今後1~2週間以内に公開予定)
- プラグイン一覧(新しいセクション、既存のすべてのプラグインの紹介、使用法、拡張開発の指示を含む、今後1~2週間以内に公開予定)
非互換の変更
SchemaInitializer の変更
SchemaInitializerを登録するためのSchemaInitializerManagerを追加- 元の
useSchemaInitializer()のrender()を置き換えるためにuseSchemaInitializerRender()を追加 - 現在の初期化アイテムのコンテキストを取得するための
useSchemaInitializerItem()を追加 type: 'itemGroup'のデフォルトコンポーネントとしてSchemaInitializerItemGroupコンポーネントを追加type: 'subMenu'のデフォルトコンポーネントとしてSchemaInitializerSubMenuコンポーネントを追加type: 'divider'のデフォルトコンポーネントとしてSchemaInitializerDividerコンポーネントを追加- 複数のリストアイテムをカスタムレンダリングするための
SchemaInitializerChildrenコンポーネントを追加 - 単一のリストアイテムをカスタムレンダリングするための
SchemaInitializerChildコンポーネントを追加 - 現在の初期化器のコンテキストを保存するための
SchemaInitializerContextの責任を変更 - 現在の初期化器のコンテキストを取得するための
useSchemaInitializer()の責任を変更 - 初期化器を定義するために
function SchemaInitializerをclass SchemaInitializerに変更 SchemaInitializerのパラメータを変更x-initializerの値のための必須パラメータnameを追加- カスタムレンダリングのボタンのための
Componentパラメータを追加。デフォルトはSchemaInitializerButton。 Componentのプロパティとスタイルを設定するためのcomponentProps、styleを追加。- リストのカスタムレンダリングのための
ItemsComponentパラメータを追加。デフォルトはSchemaInitializerItems。 ItemsComponentのプロパティとスタイルを設定するためのitemsComponentProps、itemsComponentStyleを追加。popover効果を表示するかどうかを設定するためのpopoverパラメータを追加。insert関数がフックを使用する必要がある場合のためのuseInsertパラメータを追加。dropdownパラメータをpopoverPropsに変更し、Dropdownの代わりにPopoverを使用。
SchemaInitializerのitemsパラメータを変更- 子アイテムを動的に制御するための
useChildren関数を追加。 - コンポーネント自身のプロパティのための
componentProps関数を追加。 - コンポーネントの props を動的に処理するための
useComponentProps関数を追加。 - リストアイテムの一意の識別のために
keyパラメータをnameに変更。 - 表示の制御を動的に行うために
visibleパラメータをuseVisible関数に変更。 - リストアイテムのレンダリング用に
componentパラメータをComponentに変更。
- 子アイテムを動的に制御するための
SchemaInitializer.ButtonをSchemaInitializerButtonに変更し、SchemaInitializer の Component パラメータのデフォルト値に設定。SchemaInitializer.ItemをSchemaInitializerItemに変更し、パラメータは変更なし。SchemaInitializer.ActionModalをSchemaInitializerActionModalに変更し、パラメータは変更なし。SchemaInitializer.SwitchItemをSchemaInitializer.Switchに変更し、パラメータは変更なし。SchemaInitializerProviderを削除し、SchemaInitializerManagerに置き換え。SchemaInitializer.itemWrapを削除し、itemコンポーネントをラップする必要がなくなりました。
SchemaSettings の変更
SchemaSettingsを登録するためのSchemaSettingsManagerを追加。useSchemaSettingsItem()を追加。useSchemaSettingsRender()を追加。- スキーマ設定のためのパラメータ
x-settingsを追加。 - スキーマツールバーを設定するための
x-toolbarパラメータを追加。 - スキーマツールバーをカスタマイズするための
SchemaToolbarコンポーネントを追加。 - 元の
useDesigner()を置き換えるためにuseSchemaToolbarRender()を追加。 - 設定を定義するために
function SchemaSettingsをclass SchemaSettingsに変更。 - 元の
SchemaSettingsをSchemaSettingsDropdownに変更。 SchemaSettings.ItemをSchemaSettingsItemに変更。SchemaSettings.ItemGroupをSchemaSettingsItemGroupに変更。SchemaSettings.SubMenuをSchemaSettingsSubMenuに変更。SchemaSettings.DividerをSchemaSettingsDividerに変更。SchemaSettings.RemoveをSchemaSettingsRemoveに変更。SchemaSettings.SelectItemをSchemaSettingsSelectItemに変更。SchemaSettings.CascaderItemをSchemaSettingsCascaderItemに変更。SchemaSettings.SwitchItemをSchemaSettingsSwitchItemに変更。SchemaSettings.ModalItemをSchemaSettingsModalItemに変更。SchemaSettings.ActionModalItemをSchemaSettingsActionModalItemに変更。- 廃止された
x-designerパラメータを削除し、将来的に削除される予定。代わりにx-toolbarを使用。 - 廃止された
useDesigner()を削除し、将来的に削除される予定。代わりにuseSchemaToolbarRender()を使用。
詳細は NocoBase 0.17 の非互換性のある変更 を参照してください。