Aracılığıyla paylaş


Bicep'te içeri aktarmalar

Bu makalede, paylaşılan işlevleri dışarı ve içeri aktarmak için kullandığınız söz diziminin yanı sıra Bicep genişletilebilirlik sağlayıcıları için ad alanları açıklanmaktadır.

Türleri, değişkenleri ve işlevleri dışarı aktarma

Dekoratör @export() , belirli bir deyimin başka bir dosya tarafından içeri aktarılabileceğini belirtmek için kullanılır. Bu dekoratör yalnızca tür, değişken ve işlev deyimlerinde geçerlidir. ile @export() işaretlenmiş değişken deyimleri derleme zamanı sabitleri olmalıdır.

Diğer Bicep dosyalarında kullanılmak üzere dışarı aktarma işlevinin söz dizimi şöyledir:

@export()
<statement_to_export>

türleri, değişkenleri ve işlevleri içeri aktarma

İşlevleri başka bir Bicep dosyasından içeri aktarma söz dizimi şöyledir:

import {<symbol_name>, <symbol_name>, ...} from '<bicep_file_name>'

Simgeleri yeniden adlandırmak için isteğe bağlı diğer ad ile:

import {<symbol_name> as <alias_name>, ...} from '<bicep_file_name>'

Joker karakter içeri aktarma söz dizimini kullanarak:

import * as <alias_name> from '<bicep_file_name>'

Önceki söz dizimlerini karıştırabilir ve eşleştirebilirsiniz. Joker karakter söz dizimini kullanarak içeri aktarılan simgelere erişmek için şu işlecini . kullanmanız gerekir: <alias_name>.<exported_symbol>.

Yalnızca başvurulmakta olan dosyada dışarı aktarılan deyimler içeri aktarılabilir.

Başka bir dosyadan içeri aktarılan işlevler kısıtlama olmadan kullanılabilir. Örneğin, içeri aktarılan değişkenler dosya içinde bildirilen bir değişkenin normalde geçerli olacağı her yerde kullanılabilir.

Örnek

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

Ad alanlarını ve genişletilebilirlik sağlayıcılarını içeri aktarma (Önizleme)

Not

Bu özelliğin kullanılabilmesi için deneysel özelliğin extensibility Bicep yapılandırma dosyasından etkinleştirilmesi gerekir.

Ad alanlarını içeri aktarma söz dizimi şöyledir:

import 'az@1.0.0'
import 'sys@1.0.0'

Hem hem sys de az Bicep yerleşik ad alanlarıdır. Bunlar varsayılan olarak içeri aktarılır. ve içinde az tanımlanan veri türleri ve işlevler hakkında daha fazla bilgi için bkz. Veri türleri ve Bicep işlevlerisys.

Bicep genişletilebilirlik sağlayıcılarını içeri aktarma söz dizimi şöyledir:

import '<provider-name>@<provider-version>'

Yapılandırma gerektiren Bicep genişletilebilirlik sağlayıcılarını içeri aktarma söz dizimi şöyledir:

import '<provider-name>@<provider-version>' with {
  <provider-properties>
}

Bir örnek için bkz . Bicep genişletilebilirlik Kubernetes sağlayıcısı.

Sonraki adımlar