Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este artigo descreve a sintaxe que você usa para exportar e importar funcionalidades e namespaces compartilhados. O uso de importações em tempo de compilação habilita automaticamente a geração de código da versão 2.0 do idioma.
Exportar variáveis, tipos e funções
O @export() decorador indica que outro arquivo pode importar uma declaração específica. Este decorador só é válido em type, var, e func declarações. As declarações de variáveis marcadas com @export() devem ser constantes em tempo de compilação.
Note
Não podes importar valores de parâmetros usando a importinstrução. Para reutilizar valores de parâmetros de outro ficheiro de parâmetros, use extends e acede aos valores herdados usando base.<parameterName>. Para mais informações, consulte o ficheiro Estender parámetros.
A sintaxe para exportar a funcionalidade para uso em outros arquivos Bicep é:
@export()
<statement_to_export>
Importar variáveis, tipos e funções
A sintaxe para importar a funcionalidade de outro arquivo Bicep é:
import {<symbol_name>, <symbol_name>, ...} from '<bicep_file_name>'
Com criação opcional de aliases para renomear símbolos:
import {<symbol_name> as <alias_name>, ...} from '<bicep_file_name>'
Usando a sintaxe de importação curinga:
import * as <alias_name> from '<bicep_file_name>'
Você pode misturar e combinar as sintaxes anteriores. Para acessar símbolos importados usando a sintaxe curinga, você deve usar o . operador: <alias_name>.<exported_symbol>.
Apenas as declarações que foram exportadas no ficheiro que está a ser referenciado estão disponíveis para serem importadas.
Você pode usar a funcionalidade que foi importada de outro arquivo sem restrições. Por exemplo, você pode usar variáveis importadas em qualquer lugar que uma variável declarada no arquivo normalmente seria válida.
A partir da CLI do Bicep versão 0.31.X, as variáveis importadas de outros arquivos Bicep são acessíveis dentro de suas funções definidas pelo usuário, assim como as variáveis definidas localmente. Para obter mais informações, consulte Funções definidas pelo usuário.
Exemplo
exportações.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
Importar espaços de nomes
A sintaxe para importar namespaces é:
import 'az@1.0.0'
import 'sys@1.0.0'
Ambos az e sys são namespaces internos do Bicep. Eles são importados por padrão. Para obter mais informações sobre os tipos de dados e as funções definidas em az e sys, consulte Tipos de dados e funções do Bíceps.
Conteúdos relacionados
- Para saber mais sobre os tipos de dados Bicep, consulte Tipos de dados.
- Para saber mais sobre as funções do bíceps, consulte Funções do bíceps.
- Para saber mais sobre como usar a extensão Kubernetes, consulte Extensão Bicep Kubernetes.
- Para seguir um tutorial sobre uma extensão do Kubernetes, consulte Início rápido - Implementar aplicações do Azure no Azure Kubernetes Service com a extensão Kubernetes do Bicep.
- Para saber mais sobre como usar a extensão Microsoft Graph, consulte Arquivos Bicep para Microsoft Graph.