Skip to main content

1. 削除機能が見つかりません

ベータ期間中は削除機能を提供していません。また、正式リリース後も提供されない可能性があります。削除は複雑な依存関係の問題を引き起こすため、現時点では必須と判断していません。方針は https://www.npmjs.com/ と同様です。

2. ビジネスコンポーネントをどのように理解すればよいですか?

こちらのリンクを参照してください。

3. コンポーネントの構造

コンポーネントはビューと属性で構成されます。利用者側では、コンポーネントの属性を変更することで、コンポーネントに異なるビューを表示できます。 ビューはさらに、デザインビューとランタイムビューに分けられます。多くの場合、両者は共通化して再利用できます。 提供者側では、コンポーネントのビューと属性の両方を個別に構築する必要があります。

4. カスタムコンポーネントを含むアプリを他の組織に配布した後、正常に開けますか?

はい。 カスタムコンポーネントを含むアプリを他の組織に配布した後、配布先の組織はコンポーネントを正常に利用できますが、更新はできません。コンポーネントを更新するには、サービスプロバイダーがリモートメンテナンスを通じて、配布先のアプリに新バージョンのコンポーネントを再インストールする必要があります。コンポーネントが適切に抽象化されていれば、配布後のアプリ更新ニーズの一部に対応できます。

5. ページ内でカスタムコンポーネントの属性にアクセスするには?

カスタムコンポーネントは基本コンポーネントと同じ動作をします。this.$('fieldId').get('propName') を使用して、対応するコンポーネントの属性を取得します。

6. ページ内でカスタムコンポーネントの属性を更新するには?

カスタムコンポーネントは基本コンポーネントと同じ動作をします。this.$('fieldId').set('propName', propValue) を使用して、対応するコンポーネントの属性を更新します。 または、データソースの変数バインディング方式を利用します。

7. コンポーネント内でページのコンポーネントを取得し、ページ内のコンポーネントと連携するには?

カスタムコンポーネントに関数型の属性を追加し、これをイベントコールバックとして利用できます。 ページ内では、このイベントコールバックを介してページ上の他のコンポーネントと連携できます。 コンポーネント内では、コンポーネントのイベント発生時や DidMount 内など、適切なタイミングで this.props.xxx() を呼び出してこのコールバックを実行します。 ヒント:関数型の属性にはデフォルト値を設定でき、非表示にすることもできます。

8. カスタムコンポーネントを削除するには?

現在、コンポーネントの削除には対応していません。削除は複雑な依存関係の問題を引き起こすためです。方針は https://www.npmjs.com/ と同様です。

9. カスタムコンポーネントをアンインストールするには?

現在、コンポーネントのアンインストールには対応していません。既存のアプリに影響を及ぼす可能性があるためです。この機能は今後のイテレーションで検討します。

10. カスタムコンポーネントはサードパーティ NPM パッケージのインストールに対応していますか?

現時点では対応していません。代わりに、CDN リソースの動的読み込みを利用できます。

11. インストール後、パネルにコンポーネントが表示されません

A:インストールのスコープを確認してください。

12. カスタムコンポーネントを使用してフォームでデータを送信するには?

A:現在、YiDA カスタムコンポーネントはフォームコンポーネントに対応していません。データを送信したい場合は、既存のフォームコンポーネントに値を設定する方法をご利用ください。例:一意の識別子を持つ属性を宣言し、利用時に既存フォームの一意の識別子を渡したうえで、コンポーネント側のイベントを通じて必要なデータを既存フォームに書き戻します。

13. コンポーネントバージョンの説明

コンポーネントは 開発版正式版 に分かれます。 YiDA カスタムコンポーネントのバージョン管理は、セマンティックバージョニング に追加の規約を加えた方式に従います。
  1. 0.1.0 はデフォルトの開発版です。開発版はコンポーネントデザイナーとリアルタイムに同期してデバッグできます。
  2. 1.x.x はリリース後の正式版であり、現行バージョンの機能をロックすることで、オンライン利用時の安定性を保証します。したがって、本番環境のアプリはリリース後に正式版 1.x.x をインストールする必要があります。

14. 属性を定義しました。この属性が変化したとき、コンポーネントはどのように連動して変化しますか?

コンポーネントデザイナーで変化させたいコンポーネントを選択し、対象となる属性を特定したうえで、その属性に変数またはカスタムハンドラー関数をバインドします。そして this.props.xxx を使用して、各ケースに応じた処理を実装します。例:

15. コンポーネント内でスタイルを動的に設定できますか?

はい、コンテナコンポーネントを利用できます。コンテナコンポーネントに「カスタムスタイルクラス」を追加し、変数バインディングによって制御します。