モジュール開発
新規モジュールの作成
モジュールでは、モジュール化されたアセット、ファイル、コードを追加し、バージョン管理システムでプロジェクト にインポートすることができます。 これにより、プロジェクトコードを主要な差別化要因に集中させることができ、作成したモジュールによって共通の機能を簡単にインポートすることができます。
ワークスペースに新しいモジュールを作成する:
- ワークスペースのダッシュボードから、「モジュール」タブをクリックします:
- ワークスペースダッシュボードの "モジュール "タブから、"新規モジュールの作成 "をクリックします。
また、プロジェクトのコンテキスト内で、新しいモジュールを直接作成することもできます。 Cloud EditorのModulesの隣にある「+」ボタンを押します。 そして「モジュールの作成」をクリックし、以下の指示に従います。
-
モジュールの基本情報を入力します:モジュールID(このIDはワークスペース urlに表示され、プロジェクトコードでモジュールを参照するために使用することができます)、およびモジュールタイトルを入力してください。 モジュールタイトルは、後でモジュール設定ページで編集することができます。
-
モジュールを作成すると、Cloud Editor内のmodule.jsファイルが表示されます。 ここから、モジュールの開発を始めることができます。 モジュール開発の詳細は、「モジュールの開発」セクションを参照してください。
モジュールの開発
モジュール開発は、プロジェクト開発とは少し違います。 モジュールは単独で実行することはできず、プロジェクトにインポートした後にのみ実行することができます。 モジュールは、Cloud Editorのモジュール固有のビュー、またはプロジェクトのコンテキスト内で開発することができます。 モジュールは、開発されたワークスペースでのみ、 利用可能です。
モジュールをプロジェクトにインポートしたときにのみプレビューできるため、モジュール固有のビューでモジュールを開発する場合、Cloud Editorの トップナビゲーションに「プレビュー」ボタンは表示されません。
モジュールの主な構成要素は以下の通りです:
manifest.json
manifest.json
内に、モジュールをプロジェクトにインポートする際にビジュアルコンフィギュレーターで編集可能なパラメータを作成することができます。 module.js
コードは、モジュールマニフェストで利用可能にしたパラメータをサブスクライブし、プロジェクトのコンテキスト内でモジュールを構成する際に、ユーザー入力に基づいて動的に変更することができます。
モジュールコンフィグビルダーは、自動的に1つのパラメータグループが利用可能な状態で起動します。 パラメータグループは、プロジェクトでモジュールを使用する際に、パラメータを論理的に分割して表現し、視覚的にグループ化するために使用することができます。
- グループ名をダブルクリックすると、コンフィググループの名前を変更できます。
- 「新規設定グループ」ボタンを押して、新規グループを追加します。
- コンフィググループにパラメータを追加する場合は、「+ New parameter」を押してください。
- パラメータを新規に作成する場合は、パラメータに名前を付ける必要があります。 この名前は、モジュールやプロジェクトコードで使用される可能性があるため、スペースや特殊文字を含めないようにする必要があります。
- パラメータの種類を選択します。 現在サポートされているパラメータタイプは、
String
,Number
,Boolean
, &Resource
. - 選択したら、"次へ"を押してください。
** 注意:** コンフィググループやグループ内のパラメーターの順番は、プロジェクト内でモジュールを使用する際に、ユーザーに表示される順番を決定するものです。 グループ内のパラメーターの並び替え や、コンフィググループの並び替えは、ドラッグで簡単に行うことができます。 あるグループから別のグループにパラメータを切り替えるには、パラメータフィールドの矢印アイコンを押して、パラメータを移動させたいグループをドロップダウンから選択します。
モジュールパラメーターの種類とオプション
モジュールのモジュールマニフェストを作成する場合、 String
, Number
, Boolean
, & Resource
などの異なるパラメータタイプから選択することが可能です。 各パラメータータイプの詳細:
String
文字列パラメータには、以下の編集可能な項目があります:
パラメータフィールド | タイプ | 説明 |
---|---|---|
Label (1) | String | モジュールがプロジェクトにインポートされたときに設定UIに表示される、パラメータの可読性の高い名前です。 デフォルトは、パラメータ名に基づいて動的に生成されます。 |
Default [Optional] (2) | String | モジュールをプロジェクトにインポートする際に、何も指定されなかった場合のデフォルトの文字列値です。 デフォルトは""です。 |
Number
Numberパラメータには、以下の編集可能なフィールドがあります:
パラメータフィールド | タイプ | 説明 |
---|---|---|
Label (1) | String | モジュールがプロジェクトにインポートされたときに設定UIに表示される、パラメータの可読性の高い名前です。 デフォルトは、パラメータ名に基づいて動的に生成されます。 |
Default [Optional] (2) | Number | モジュールをプロジェクトにインポートする際に、何も指定されなかった場合のデフォルトの数値です。 デフォルトは null です。 |
Min [Optional] (3) | Number | モジュールをプロジェクトにインポートする際に、ユーザーが入力できる最大数値。 デフォルトは null です。 |
Max [Optional] (4) | Number | モジュールをプロジェクトにインポートする際に、ユーザーが入力できる最小の数値。 デフォルトは null です。 |
Boolean
Boolean パラメータには、以下の編集可能なフィールドがあります:
パラメータフィールド | タイプ | 概要 |
---|---|---|
Label (1) | String | モジュールがプロジェクトにインポートされたときに設定UIに表示される、パラメータの可読性の高い名前です。 デフォルトは、パラメータ名に基づいて動的に生成されます。 |
Default [Optional] (2) | Boolean | モジュールをプロジェクトにインポートする際に、何も指定しなかった場合のデフォルトのブーリアン値です。 デフォルトは false です。 |
Trueの場合Label [Optional] (3) | String | モジュールがプロジェクトにインポートされたときに設定UIに表示される、true booleanオプションのラベルです。 デフォルトは true . |
Falseの場合Label [Optional] (4) | String | モジュールがプロジェクトにインポートされたときに、設定UIに表示されるfalse booleanオプションのラベルです。 デフォルトは false です。 |
Resource
リソースパラメータには、以下の編集可能なフィールドがあります:
パラメータフィールド | タイプ | 説明 |
---|---|---|
Label (1) | String | モジュールがプロジェクトにインポートされたときに設定UIに表示される、パラメータの可読性の高い名前です。 デフォルトは、パラメータ名に基づいて動的に生成されます。 |
Allow None (2) | Boolean | モジュールをプロジェクトにインポートする際に、設定UIから明示的にリソースをNULLに設定する機能の有効・無効を設定します。 デフォルトは false です。 |
Allowed Asset Extensions [Optional] (3) | File Types | モジュールがプロジェクトにインポートされたときに、設定UIに表示される方法で指定されたファイルタイプをアップロードする機能を有効にします。 デフォルトはすべてのファイルタイプです。 |
Default Resource [Optional] (4) | File | モジュールをプロジェクトにインポートする際に、何も指定されなかった場合のデフォルトのリソースです。 デフォルトは null です。 |
module.js
module.js
は、8th Wallモジュールのメインエントランスポイントです。 module.js
のコードは、プロジェクトがロードされる前に を実行します。 また、他のファイルやアセットを追加して、module.js
の中で参照することもできます。
モジュールは、その目的や開発スタイルによって、大きく異なることがありま す。 通常、モジュールは、以下の要素のいくつかを含んでいます:
モジュール設定値のサブスクリプション
import {subscribe} from 'config' // config はモジュールオプションにアクセスする方法です
subscribe((config) => {
// あなたのコードはここで config に何かをします
})