英語で読む

次の方法で共有


ReactControl.getOutputSchema

コンポーネントを初期化する前に、フレームワークによって呼び出されます。 オブジェクト型の出力プロパティに対して、マニフェストで定義された用語に基づいてスキーマを返します。

使用可能な対象

モデル駆動型アプリ、キャンバス アプリ、& ポータル。

構文

getOutputSchema(context)

注釈

この出力には、マニフェストで定義されたオブジェクト型の各プロパティに対する JSON スキーマが含まれます。

たとえば、マニフェストに MyOutputObject というオブジェクト型の出力プロパティがあり、コントロールが MyOutputObject プロパティの値に対して次のようなオブジェクトを返す必要がある場合です:

{ 
  "ProductName": "sample name", 
  "Value": 123.4 
} 

そして、次のように返す必要があります:

{ 

  "MyOutputObject": { 
    "$schema": "http://json-schema.org/draft-04/schema#", 
    "type": "object", 
    "properties": { 
      "ProductName": { 
        "type": "string" 
      }, 
      "Value": { 
        "type": "number" 
      } 
    } 
  } 
} 

返されるスキーマは、JSON スキーマ のサブセットです。 JSON スキーマでサポートされている型とキーワード:

  • string
  • integer
  • number
  • array
    • items
  • object
    • properties
  • boolean

Parameters

パラメーター名 タイプ Required Description
context Context はい パラメーター、コンポーネントのメタデータ、インタフェース関数を含む 入力プロパティ

コントロールには MyOutputObject というオブジェクト型の出力プロパティがあり、値は次のようになります:

{ 
  id: 10, 
  productDetails: { 
    name: "Test Product", 
    price: 100.23, 
  }, 
  itemList: [ 
    { 
      itemId: 1, 
      name: "Item-1", 
      value: 123, 
      active: true, 
    }, 
    { 
      itemId: 2, 
      name: "Item-2", 
      value: 234, 
      active: false, 
    } 
  ] 
}; 

GetOutputSchema の実装:

public async getOutputSchema(context: ComponentFramework.Context<IInputs>): 
Promise<Record<string, unknown>> { 
  return Promise.resolve({ 
    MyOutputObject: { 
      "$schema": "http://json-schema.org/draft-04/schema#", 
      "type": "object", 
      "properties": { 
        "id": { 
          "type": "integer" 
        }, 
        "productDetails": { 
          "type": "object", 
          "properties": { 
            "name": { 
              "type": "string" 
            }, 
            "price": { 
              "type": "number" 
            } 
          } 
        }, 
        "itemList": { 
          "type": "array", 
          "items": 
          { 
            "type": "object", 
            "properties": { 
              "itemId": { 
                "type": "integer" 
              }, 
              "name": { 
                "type": "string" 
              }, 
              "value": { 
                "type": "integer" 
              }, 
              "active": { 
                "type": "boolean" 
              }, 
            } 
          } 
        } 
      } 
    } 
  }); 
} 

ReactControl (プレビュー)
Power Apps Component Framework API 参照
Power Apps Component Framework の概要

注意

ドキュメントの言語設定についてお聞かせください。 簡単な調査を行います。 (この調査は英語です)

この調査には約 7 分かかります。 個人データは収集されません (プライバシー ステートメント)。