عقدة template
عقدة template
تُستخدم لتوليد البيانات بناءً على قالب محدد. إنها تسمح بإنشاء سلاسل نصية، HTML، JSON، وأشكال أخرى، من خلال تطبيق استبدال ديناميكي للقيم من الرسالة msg
أو مصادر أخرى.
إعدادات عقدة template
1. الاسم
حقل لتحديد اسم العقدة.
يظهر الاسم في مساحة العمل ويساعد في التعرف بسهولة على العقدة.
إذا ترك فارغًا، ستُسمى العقدة template
.
مثال:
- اسم العقدة:
hello world
2. القالب
الحقل الرئيسي حيث يتم تحديد نص القالب.
يدعم استبدال البيانات من خلال الأقواس المعقوفة ({{...}}
) وإمكانيات القالب Mustache.
مثال على القالب:
Hello {{payload}} !
3. الصيغة
تحدد صيغة القالب:
- Mustache: قالب Mustache.
- نص عادي: سلسلة نصية.
4. الإخراج كـ
تحدد صيغة البيانات الناتجة من العقدة:
- نص عادي: ينشئ سلسلة نصية.
- JSON: ينشئ JSON.
- YAML: ينشئ YAML.
ميزات صيغة Mustache
-
استبدال القيم:
يُستخدم{{property}}
، حيثproperty
هو خاصية كائنmsg
.مثال:
- القالب:
Hello, {{name}}!
- الرسالة:
{ "name": "Alice" }
- النتيجة:
Hello, Alice!
- القالب:
-
عرض الشروط:
تدعم المنطق الشرطي من خلال وجود أو عدم وجود قيمة.مثال:
{{#isOnline}}
<p>Status: Online</p>
{{/isOnline}}
{{^isOnline}}
<p>Status: Offline</p>
{{/isOnline}} -
الحلقات:
يمكن التكرار عبر المصفوفات.مثال:
<ul>
{{#items}}
<li>{{.}}</li>
{{/items}}
</ul>الرسالة:
{ "items": ["Item 1", "Item 2", "Item 3"] }
النتيجة:
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul> -
الهروب من HTML:
يقوم Mustache بشكل افتراضي بهروب الرموز الخاصة بـ HTML.
لتجنب الهروب، استخدم{{{...}}}
.مثال:
{{{htmlContent}}}
البيانات المدخلة
تقبل العقدة كائن msg
. تُستخدم البيانات من الرسالة في القالب لاستبدال القيم.
مثال على الرسالة:
{
"payload": {
"temperature": 22.5
},
"name": "Alice"
}
البيانات الناتجة
ترسل العقدة كائن msg
، مضافًا إليه القالب المعالج. تُسجل النتيجة في msg.payload
.