سؤال

وأنا محاولة لخلق عنصر struts2 باستخدام freemarker. I إنشاء ملف ftl مع رمز مثل هذا:

<script type="text/javascript" src="${parameters.library?default('')}"></script>

والتي تتوقع المعلمة اسمه library لتمريرها إلى المكون. إذا كانت المعلمة غائبة ثم فإنه افتراضات إلى String فارغة.

في صفحة JSP بلدي، وأنا أشير إلى مكون مثل هذا:

<s:component template="mytemplate.ftl">
    <s:param name="library" value="/scripts/mylibrary.js"/>
</s:component>

ولسوء الحظ، لم يتم تعيين قيمة للمعلمة المكتبة. هو دائما String فارغة.

وأنا باستخدام المشورة من هذا تعليمي ويبدو كما لو أن s:param العلامة يجب تمرير المعلمة في قالب وجعلها متاحة. ما أنا في عداد المفقودين هنا؟

هل لديها بعض الخبرة بناء هذه المكونات التي يمكن أن تلقي بعض الضوء؟

وشكرا.

هل كانت مفيدة؟

المحلول

وترسل المعلمة مع علامات الاقتباس المفردة

<s:component template="mytemplate.ftl">
    <s:param name="library" value="'/scripts/mylibrary.js'"/>
</s:component>

نصائح أخرى

وأنا في نهاية المطاف ركض عبر بعض بناء الجملة في المستندات التي تعمل. لا بد لي من الإشارة إلى المعلمة مثل هذا:

<script type="text/javascript" src="${parameters.get('library')?default('')}">
</script>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top