Importy v Bicep
Tento článek popisuje syntaxi, kterou používáte k exportu a importu sdílených funkcí a oborů názvů pro rozšíření Bicep. Použití importů v době kompilace automaticky povoluje generování kódu verze 2.0 .
Export proměnných, typů a funkcí
Dekorátor @export()
označuje, že jiný soubor může importovat konkrétní příkaz. Tento dekorátor je platný pouze pro type
, var
a func
příkazy. Příkazy proměnných označené @export()
pomocí musí být konstanty kompilace.
Syntaxe pro export funkcí pro použití v jiných souborech Bicep je:
@export()
<statement_to_export>
Import proměnných, typů a funkcí
Syntaxe pro import funkcí z jiného souboru Bicep je:
import {<symbol_name>, <symbol_name>, ...} from '<bicep_file_name>'
Pomocí volitelného aliasingu pro přejmenování symbolů:
import {<symbol_name> as <alias_name>, ...} from '<bicep_file_name>'
Použití syntaxe importu zástupných znaků:
import * as <alias_name> from '<bicep_file_name>'
Můžete kombinovat a shodovat předchozí syntaxe. Pokud chcete získat přístup k importovaným symbolům pomocí syntaxe zástupných znaků, musíte použít .
operátor: <alias_name>.<exported_symbol>
.
K importu jsou k dispozici pouze příkazy exportované do souboru, na který se odkazuje.
Můžete použít funkce importované z jiného souboru bez omezení. Můžete například použít importované proměnné kdekoli, kde by byla proměnná deklarovaná v souboru normálně platná.
Příklad
export.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
Import oborů názvů a rozšíření (Preview)
Poznámka:
Aby bylo možné tuto funkci používat, musí být experimentální funkce extensibility
povolená z konfiguračního souboru Bicep.
Syntaxe pro import oborů názvů je:
import 'az@1.0.0'
import 'sys@1.0.0'
Obě az
a sys
jsou předdefinované obory názvů Bicep. Ve výchozím nastavení se importují. Další informace o datových typech a funkcích definovaných v az
a sys
naleznete v tématu Datové typy a funkce Bicep.
Syntaxe pro import rozšíření Bicep je:
import '<extension-name>@<extension-version>'
Syntaxe pro import rozšíření Bicep, která vyžadují konfiguraci, je:
import '<extension-name>@<extension-version>' with {
<extension-properties>
}
Příklad najdete v tématu Rozšíření Bicep Kubernetes.
Související obsah
- Další informace o datových typech Bicep najdete v tématu Datové typy.
- Další informace o funkcích Bicep najdete v tématu Funkce Bicep.
- Informace o tom, jak používat rozšíření Bicep Kubernetes, najdete v tématu Rozšíření Bicep Kubernetes.
- Pokud chcete projít kurz rozšíření Kubernetes, projděte si rychlý start: Nasazení aplikací Azure do Azure Kubernetes Services pomocí rozšíření Bicep Kubernetes.