Mustache.js: تم تحويل المصفوفات إلى سلاسل

تم إنشاؤها على ٩ ديسمبر ٢٠١١  ·  5تعليقات  ·  مصدر: janl/mustache.js

لدي هذه المجموعة:
"Optionen": [
"x" ،
"ذ" ،
"ض"
]

عندما اتصل بـ "{{Optionen}}" يتم إرجاع هذا: "x، y، z"

لكني أحتاج إلى الحصول على ["x"، "y"، "z"]

هل هذا خطأ أم أنني أفتقد شيئًا؟

التعليق الأكثر فائدة

نعم ، هذا حسب التصميم. سيتم إجبار أي مفتاح يطابق في كائن البيانات في سلسلة إذا لم تكن "زائفة". في حالة المصفوفات ، تقوم JavaScript بإجبارها على تكوين سلاسل بتنسيق x,y,z (جربها بنفسك: افتح firebug واكتب ["x","y","z"].toString() وستكون النتيجة x,y,z .

إذا كنت تريد أي شيء مختلف ، فأنت بحاجة إلى كتابة النموذج يدويًا. شيء مثل:

[{{#Optionen}}"{{.}}",{{/Optionen}}]

امل ان يساعد.

ال 5 كومينتر

نعم ، هذا حسب التصميم. سيتم إجبار أي مفتاح يطابق في كائن البيانات في سلسلة إذا لم تكن "زائفة". في حالة المصفوفات ، تقوم JavaScript بإجبارها على تكوين سلاسل بتنسيق x,y,z (جربها بنفسك: افتح firebug واكتب ["x","y","z"].toString() وستكون النتيجة x,y,z .

إذا كنت تريد أي شيء مختلف ، فأنت بحاجة إلى كتابة النموذج يدويًا. شيء مثل:

[{{#Optionen}}"{{.}}",{{/Optionen}}]

امل ان يساعد.

هذا يقترب جدا. باستخدام [{{#Optionen}} "{{.}}"، {{/ Optionen}}] أحصل على ["x"، "y"، "z"،]
لسوء الحظ ، ستكون الفاصلة الأخيرة مشكلة ، عندما يتم حفظ هذه القيمة مرة أخرى (على سبيل المثال بعد إضافة "أ" في البداية). هل هناك طريقة لمنع تلك الفاصلة الأخيرة؟
أوه ، بعد الحفظ ، ["a" ، "x" ، "y" ، "z" ،] فهمت هذا: "[\" a ، x ، y ، z \ "،]"
حفظ a، x، y، z يعطي المصفوفة الصحيحة ["a"، "x"، "y"، "z"]
يبدو أنه من الأفضل التمسك بـ a و x و y و z.
آمل ، لا أحتاج أبدًا إلى حفظ قيمة بفاصلة ...
حسنًا ، أعتقد أنه لا يوجد حل سهل إلا إذا لم تستخدم الشارب.
تصحيح لي أنا مخطئ. إغلاق القضية.
شكرا كثيرا على المساعدة!

قضية مغلقة

آسف ، لست متأكدا مما تحاول القيام به. لست متأكدًا مما يعنيه "الحفظ" ، ولكن لإزالة الفاصلة الأخيرة في Moustache ، أعتقد أن الطريقة الوحيدة للقيام بذلك هي تقديم متغير علامة عن طريق التكرار المسبق للقائمة في JavaScript ، والتي سرعان ما تصبح مشكلة أكبر من قيمتها. أعتقد أن وظيفة المساعدين التي يبنيهاjanl قد تسهل حلها في Mustache نفسها ، لكنني لست متأكدًا لأنني لست على دراية بها.

بدلاً من ذلك ، انظر إلى JSON.stringify و JSON.parse (مضمن في المتصفح) والذي قد يساعد في فك / تسلسل المصفوفات إلى التنسيق الذي تتوقعه.

لقد وجدت الحل: .split ("،") فعل ذلك!
لذلك أقوم بتحميل القيمة مع الشارب في حقل. ثم أستخدم .split ("،) عند حفظ البيانات في الحقل باستخدام saveDoc.

2011/12/12 سحاب يزداني <
[email protected]

آسف ، لست متأكدا مما تحاول القيام به. لست متأكدًا مما يعنيه "الحفظ" ،
ولكن لإزالة الفاصلة الأخيرة في Moustache ، أعتقد أن الطريقة الوحيدة للقيام بذلك
هو تقديم متغير علامة عن طريق التكرار المسبق للقائمة في جافا سكريبت ،
التي سرعان ما تصبح مشكلة أكثر من قيمتها. أعتقد أن المساعدين
قد تسهل الوظيفة التي ينشئهاjanl حل هذه المشكلة
الشارب نفسه ، لكنني لست متأكدًا لأنني لست على دراية به.

بدلاً من ذلك ، انظر إلى JSON.stringify و JSON.parse (المضمنة في ملف
المتصفح) والتي قد تساعد في إزالة / تسلسل المصفوفات بالتنسيق الذي تريده
متوقع.


قم بالرد على هذا البريد الإلكتروني مباشرة أو قم بعرضه على GitHub:
https://github.com/janl/mustache.js/issues/146#issuecomment -3100397

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

zekth picture zekth  ·  18تعليقات

Immortalin picture Immortalin  ·  12تعليقات

amper5and picture amper5and  ·  5تعليقات

kuldeepdhaka picture kuldeepdhaka  ·  9تعليقات

funston picture funston  ·  7تعليقات