Bicep 中的匯入
本文說明您用來匯出和匯入 Bicep 延伸模組的共用功能和命名空間的語法。 使用編譯時間匯入會自動啟用 語言 2.0 版程式代碼產生。
匯出變數、類型和函式
@export()
裝飾專案表示另一個檔案可以匯入特定語句。 這個裝飾專案只在、 var
和 func
語句上type
有效。 標記 @export()
的變數陳述式必須在編譯時期固定。
匯出功能以用於其他 Bicep 檔案的語法如下:
@export()
<statement_to_export>
匯入變數、類型和函式
從另一個 Bicep 檔案匯入功能的語法如下:
import {<symbol_name>, <symbol_name>, ...} from '<bicep_file_name>'
使用選擇性別名來重新命名符號:
import {<symbol_name> as <alias_name>, ...} from '<bicep_file_name>'
使用萬用字元匯入語法:
import * as <alias_name> from '<bicep_file_name>'
您可以混搭上述語法。 若要使用通配符語法存取匯入的符號,您必須使用 .
運算符: <alias_name>.<exported_symbol>
。
只有參考之檔案中導出的語句才可供匯入。
您可以使用從另一個檔案匯入的功能,而不受限制。 例如,您可以在檔案中宣告變數的任何位置使用匯入的變數通常都是有效的。
範例
exports.bicep
@export()
type myObjectType = {
foo: string
bar: int
}
@export()
var myConstant = 'This is a constant value'
@export()
func sayHello(name string) string => 'Hello ${name}!'
main.bicep
import * as myImports from 'exports.bicep'
import {myObjectType, sayHello} from 'exports.bicep'
param exampleObject myObjectType = {
foo: myImports.myConstant
bar: 0
}
output greeting string = sayHello('Bicep user')
output exampleObject myImports.myObjectType = exampleObject
匯入命名空間和延伸模組 (預覽)
注意
實驗性功能 extensibility
必須從 Bicep 設定檔啟用,才能使用此功能。
匯入命名空間的語法為:
import 'az@1.0.0'
import 'sys@1.0.0'
az
和 sys
都是 Bicep 內建的命名空間。 預設會匯入它們。 如需 az
和 sys
中定義的資料類型和函式有關的詳細資訊,請參閱資料類型和 Bicep 函式。
匯入 Bicep 延伸模組的語法如下:
import '<extension-name>@<extension-version>'
匯入 Bicep 延伸模組的語法,其需要設定為:
import '<extension-name>@<extension-version>' with {
<extension-properties>
}
如需範例,請參閱 Bicep Kubernetes 擴充功能。
相關內容
- 若要瞭解 Bicep 數據類型,請參閱 數據類型。
- 若要瞭解 Bicep 函式,請參閱 Bicep 函式。
- 若要瞭解如何使用 Bicep Kubernetes 擴充功能,請參閱 Bicep Kubernetes 擴充功能。
- 若要完成 Kubernetes 擴充功能教學課程,請參閱 快速入門:使用 Bicep Kubernetes 擴充功能將 Azure 應用程式部署至 Azure Kubernetes Services。