Değişken alanı, değeri olarak bir dizeyi ve metin olarak bir dizeyi depolar. İlgili içeriği oluşturmak için kullanılan değer, değişkenin kimliğidir, metin ise değişkenin adıdır.
Değişken alanı
Düzenleyici açıkken değişken alanı
Daraltılmış bloktaki değişken alanı
içerik üretimi
Yazılmadı
JSON
{
"type": "example_variable_untyped",
"message0": "variable: %1",
"args0": [
{
"type": "field_variable",
"name": "FIELDNAME",
"variable": "x"
}
]
}
JavaScript
Blockly.Blocks['example_variable_untyped'] = {
init: function() {
this.appendDummyInput()
.appendField('variable:')
.appendField(new Blockly.FieldVariable('x'), 'FIELDNAME');
}
};
Yazıldı
JSON
{
"type": "example_variable_typed",
"message0": "variable: %1",
"args0": [
{
"type": "field_variable",
"name": "FIELDNAME",
"variable": "x",
"variableTypes": ["Number", "String"],
"defaultType": "Number"
}
]
}
JavaScript
Blockly.Blocks['example_variable_typed'] = {
init: function() {
this.appendDummyInput()
.appendField('variable:')
.appendField(new Blockly.FieldVariable(
'X',
null,
['Number', 'String'],
'Number'
), 'FIELDNAME');
}
};
Değişken kurucusu, isteğe bağlı bir değişken adı (isteğe bağlı) doğrulayıcı, isteğe bağlı bir değişken dizisi isteğe bağlı bir varsayılan türe göre seçilebilir.
- Değişken adı bir dize olmalıdır. Bu, alanın içerdiği ilk değişken. Değer boşsa veya tanımlanmamışsa benzersiz bir ad oluşturulacaktır.
- Değişken türleri bir dize dizisi olmalıdır. Bu, ilgili alana alanda ne tür değişkenler bulunabilir (ör. ekleyin). Boş veya tanımlanmamış ise tüm değişken türleri kabul edilmesi (ve açılır listeye eklenmesi) gerekir.
- Varsayılan tür bir dize olmalıdır. Bu, alanın ilk değişken modeli. Bu tanımlanmışsa eklenmelidir iki kat daha fazla belirlenebilir. Boş veya tanımlanmamış ise bu değer varsayılan olarak ayarlanır ilk değişkenin esnek bir şekilde yazılacağı anlamına gelir.
→ Yüksek düzeyde yazma konusunda daha fazla bilgi için bkz. Tür Kontrolleri.
Serileştirme
JSON
Bir değişken alanının JSON dosyası aşağıdaki gibi görünür:
{
"fields": {
"FIELDNAME": {
"id": "QJD^+@[RVIwbLSZoDb:V"
}
}
}
Burada FIELDNAME
, değişken alanına referans veren bir dizedir ve
değer, alanın başvuruda bulunduğu değişkenin kimliğidir.
Bu alanı araç kutusunda kullanıyorsanız grubun adını belirtmek de için kullanılabilecek hiçbir değişken olmayacağından, doğrudan yazın (isteğe bağlı) bir referans noktası olarak kabul edilir.
{
"fields": {
"FIELDNAME": {
"name": "my_variable",
"type": "string"
}
}
}
XML
Bir değişken alanı için XML aşağıdaki gibi görünür:
<field name="VARIABLE" id="QJD^+@[RVIwbLSZoDb:V" variabletype="">name</field>
- Düğümün
name
özelliği, bir değişken alanına referans veren bir dize içeriyor. - Düğümün
id
özelliği, alandaki değişkenin kimliğini içerir referanslar. - Düğümün
variabletype
özelliği, değişkenin türünü içerir. İlgili içeriği oluşturmak için kullanılanvariabletype
, oluşturucunun varsayılan türü parametresiyle aynı kuralları uygular. - Düğümün iç metni, değişkenin adıdır. İç metin değeri oluşturucunun değişken adı parametresiyle aynı kurallara uyar.
Değişken doğrulayıcı oluşturma
Değişken alanlarının değeri bir dizedir. Dolayısıyla, tüm doğrulayıcılar bir dizeyi kabul etmelidir ve
bir dize, null
veya undefined
döndürür.
Aşağıda, seçenekleri vardır. Bu değişkenlerin Workspace.createVariable işlevini kullanın.
function(newValue) {
var validIds = ['Worf', 'Riker', 'Picard'];
if (validIds.indexOf(newValue) == -1) {
return null;
}
return newValue;
}