Importer i Bicep
I den här artikeln beskrivs den syntax som du använder för att exportera och importera delade funktioner och namnområden. Om du använder kompileringstidsimporter aktiveras automatiskt språkversion 2.0-kodgenerering .
Exportera variabler, typer och funktioner
Dekoratören @export()
anger att en annan fil kan importera en specifik instruktion. Den här dekoratören är endast giltig för type
, var
och func
-instruktioner. Variabelinstruktioner som markerats med @export()
måste vara kompileringskonstanter.
Syntaxen för att exportera funktioner för användning i andra Bicep-filer är:
@export()
<statement_to_export>
Importera variabler, typer och funktioner
Syntaxen för att importera funktioner från en annan Bicep-fil är:
import {<symbol_name>, <symbol_name>, ...} from '<bicep_file_name>'
Med valfritt alias för att byta namn på symboler:
import {<symbol_name> as <alias_name>, ...} from '<bicep_file_name>'
Använd syntaxen för jokerteckenimport:
import * as <alias_name> from '<bicep_file_name>'
Du kan blanda och matcha de föregående syntaxerna. Om du vill komma åt importerade symboler med hjälp av jokerteckensyntaxen måste du använda operatorn .
: <alias_name>.<exported_symbol>
.
Endast instruktioner som exporterades i filen som refereras är tillgängliga för import.
Du kan använda funktioner som har importerats från en annan fil utan begränsningar. Du kan till exempel använda importerade variabler var som helst där en variabel som deklareras i filen normalt skulle vara giltig.
Exempel
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
Importera namnområden
Syntaxen för att importera namnområden är:
import 'az@1.0.0'
import 'sys@1.0.0'
Både az
och sys
är inbyggda Bicep-namnområden. De importeras som standard. Mer information om datatyperna och funktionerna som definierats i och finns i az
Datatyper och Bicep-funktioner.sys
Relaterat innehåll
- Mer information om Bicep-datatyper finns i Datatyper.
- Mer information om Bicep-funktionerna finns i Bicep-funktioner.
- Mer information om hur du använder Kubernetes-tillägget finns i Bicep Kubernetes-tillägget.
- Om du vill gå igenom en självstudie om Kubernetes-tillägget läser du Snabbstart – Distribuera Azure-program till Azure Kubernetes Services med hjälp av Bicep Kubernetes-tillägget..
- Mer information om hur du använder Microsoft Graph-tillägget finns i Bicep-mallar för Microsoft Graph.