選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

AWS::LanguageExtensions 轉換程序

焦點模式
AWS::LanguageExtensions 轉換程序 - AWS CloudFormation

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

篩選條件查看

本主題說明如何使用AWS::LanguageExtensions轉換來啟用預設無法使用的其他函數和功能。

AWS::LanguageExtensions 是 CloudFormation 巨集,當您使用變更集建立或更新堆疊時,會在堆疊範本中參考 時,將轉換定義的任何內部函數更新至範本中的解析值。

透過將此轉換包含在 CloudFormation 範本中,您可以存取其他功能,例如 Fn::ForEach,以允許更進階的操作,例如反覆運算。您也可以在通常不允許的地方使用內部函數,例如 RefFn::GetAtt函數。

用量

若要使用AWS::LanguageExtensions轉換,您必須在 CloudFormation 範本的最上層宣告。您無法將 AWS::LanguageExtensions 作為內嵌於任何其他範本區段的轉換使用。

宣告必須使用常值字串AWS::LanguageExtensions作為其值。您不能使用參數或函數來指定轉換值。

語法

若要在 CloudFormation 範本中宣告此轉換,請使用下列語法:

JSON

{ "Transform":"AWS::LanguageExtensions", "Resources":{ ... } }

YAML

Transform: AWS::LanguageExtensions Resources: ...

AWS::LanguageExtensions 轉換是沒有其他參數的獨立宣告。

支援其他 函數

AWS::LanguageExtensions轉換支援下列其他函數:

考量事項

使用 AWS::LanguageExtensions 轉換時,請謹記以下幾點考量:

  • 當您使用不同的參數值更新堆疊時,如果原始範本包含轉換,請勿使用 CloudFormation 主控台中的使用現有範本選項,或同等命令列選項 。 CloudFormation --use-previous-template 更新堆疊時,請使用原始、未轉換的範本。這將確保堆疊正確更新新的參數值。

  • 僅由 AWS::LanguageExtensions 轉換提供的內部函數在範本中不支援簡短格式 YAML 語法。使用這些函數的明確參考。例如,使用 Fn::Length 代替 !Length

  • CLI AWS SAM 目前不支援AWS::LanguageExtensions轉換的內部Fn::ForEach函數。

  • 如果您使用多個轉換,請使用清單格式。如果您使用的是自訂巨集,則 位置 AWS提供的轉換會在您的自訂巨集之後進行。如果您同時使用 AWS::LanguageExtensionsAWS::Serverless 轉換,則在清單中,AWS::LanguageExtensions 轉換必須排在 AWS::Serverless 轉換之前。

  • AWS::LanguageExtensions 轉換提供的函數和屬性僅支援範本的 ResourcesConditionsOutputs區段。

範例

下列範例示範如何使用 AWS::LanguageExtensions 轉換來使用由轉換定義的Fn::Length內部 函數。

JSON

{ "AWSTemplateFormatVersion": "2010-09-09", "Transform": "AWS::LanguageExtensions", "Parameters": { "QueueList": { "Type": "CommaDelimitedList" }, "QueueNameParam": { "Description": "Name for your SQS queue", "Type": "String" } }, "Resources": { "Queue": { "Type": "AWS::SQS::Queue", "Properties": { "QueueName": { "Ref": "QueueNameParam" }, "DelaySeconds": { "Fn::Length": { "Ref": "QueueList" } } } } } }

YAML

AWSTemplateFormatVersion: 2010-09-09 Transform: 'AWS::LanguageExtensions' Parameters: QueueList: Type: CommaDelimitedList QueueNameParam: Description: Name for your SQS queue Type: String Resources: Queue: Type: AWS::SQS::Queue Properties: QueueName: !Ref QueueNameParam DelaySeconds: 'Fn::Length': !Ref QueueList

如需更多範例,請參閱下列主題。

如需使用巨集的一般資訊,請參閱AWS CloudFormation 《 使用者指南》中的使用範本巨集在 CloudFormation 範本上執行自訂處理

隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。