Ana içeriğe geç

template Düğümü

template düğümü, belirli bir şablona dayalı olarak veri oluşturmak için kullanılır. Mesaj msg veya diğer kaynaklardan değerlerin dinamik olarak yerleştirilmesini sağlayarak metin, HTML, JSON ve diğer formatları oluşturmanıza olanak tanır.


template Düğüm Ayarları

IMG2

1. İsim

Düğümün adını belirtmek için bir alan.
İsim, çalışma alanında görüntülenir ve düğümü kolayca tanımlamanıza yardımcı olur.
Boş bırakılırsa, düğüm template olarak adlandırılacaktır.

Örnek:

  • Düğüm adı: hello world

2. Şablon

Metin şablonunun belirlendiği ana alan.
Verilerin yerleştirilmesini destekler ve Mustache şablon motorunun olanaklarını sunar.

Şablon örneği:

Hello {{payload}} !

3. Sözdizimi

Şablonun sözdizimini tanımlar:

  • Mustache: Mustache şablonu.
  • Düz Metin: Metin dizesi.

4. Çıktı Olarak

Düğümün çıkış veri formatını tanımlar:

  • Düz Metin: Metin dizesi oluşturur.
  • JSON: JSON oluşturur.
  • YAML: YAML oluşturur.

Mustache Sözdizimi Özellikleri

  1. Değer Yerleştirme:
    {{property}} kullanılır, burada property msg nesnesinin bir özelliğidir.

    Örnek:

    • Şablon: Hello, {{name}}!
    • Mesaj: { "name": "Alice" }
    • Sonuç: Hello, Alice!
  2. Koşul Gösterimi:
    Koşullu mantık, bir değerin varlığı veya yokluğu ile desteklenir.

    Örnek:

    {{#isOnline}}
    <p>Durum: Çevrimiçi</p>
    {{/isOnline}}
    {{^isOnline}}
    <p>Durum: Çevrimdışı</p>
    {{/isOnline}}
  3. Döngüler:
    Diziler üzerinde yineleme yapılabilir.

    Örnek:

    <ul>
    {{#items}}
    <li>{{.}}</li>
    {{/items}}
    </ul>

    Mesaj:

    { "items": ["Item 1", "Item 2", "Item 3"] }

    Sonuç:

    <ul>
    <li>Item 1</li>
    <li>Item 2</li>
    <li>Item 3</li>
    </ul>
  4. HTML Kaçışlama:
    Mustache, özel HTML karakterlerini varsayılan olarak kaçışlar.
    Kaçışlamayı önlemek için {{{...}}} kullanın.

    Örnek:

    {{{htmlContent}}}

Girdi Verileri

Düğüm, msg nesnesini alır. Mesajdan gelen veriler, değerlerin yerleştirilmesi için şablonda kullanılır.

Mesaj örneği:

{
"payload": {
"temperature": 22.5
},
"name": "Alice"
}

Çıktı Verileri

Düğüm, işlenmiş şablonla tamamlanmış msg nesnesini gönderir. Sonuç msg.payload'a yazılır.


Kullanım Örnekleri

Örnek 1: HTML Sayfası Oluşturma

Şablon:

<!DOCTYPE html>
<html>
<head>
<title>Sıcaklık Raporu</title>
</head>
<body>
<h1>{{name}} için Sıcaklık Raporu</h1>
<p>Mevcut sıcaklık: {{payload.temperature}}°C</p>
</body>
</html>

Mesaj:

{
"payload": {
"temperature": 22.5
},
"name": "Alice"
}

Sonuç:
Dinamik verilerle HTML sayfası.


Örnek 2: JSON Yanıtı Oluşturma

Şablon:

{
"status": "{{status}}",
"data": {
"temperature": {{payload.temperature}},
"humidity": {{payload.humidity}}
}
}

Mesaj:

{
"status": "ok",
"payload": {
"temperature": 22.5,
"humidity": 60
}
}

Sonuç:

{
"status": "ok",
"data": {
"temperature": 22.5,
"humidity": 60
}
}