يمكن الوصول إليها عالميا الموارد في النصيبه التطبيق

StackOverflow https://stackoverflow.com/questions/1632478

  •  06-07-2019
  •  | 
  •  

سؤال

حاليا لدي طلب وهو يتكون من BasePage التي رأس (الفريق) ، تذييل(الفريق) في مركز ورثت محتوى الصفحة.المشكلة أنا الوقوع في مع ResourceReferences (ربما هذا ليس الطريق الصحيح).أنا أبحث عن الحل الذي سوف اسمحوا لي أن تفعل ما يلي:

  1. لديك دليل واحد عالميا تستخدم الصور, js, css
  2. سجل (أو لا) تلك الموارد بحيث يمكن الوصول إليها من أي ورثت صفحة أو صفحات الشقيق إلى BasePage قد خلق في المستقبل
  3. تسمح هذه الموارد أن يكون موجودا داخل CSS و JS (مثلا ، عناوين الصور)

حتى الآن لقد قرأت من خلال العديد من الأمثلة التي تظهر كيفية حزمة الموارد عنصر أو مستوى التطبيق نطاق, ولكن لا يبدو أن عنوان كل 3 قضايا أنا أبحث عن المساعدة.فمن الأهمية بمكان أن لا يكون نسخة عالميا الصور المستخدمة (تحرير رمز والشعارات الخ) في كل مكون من مكونات حزمة الرجوع, و سيكون من الجميل لأسباب الصيانة أن هذه الارتباطات في مكان واحد عالميا لسهولة الرجوع إليها وتحديثها.

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

المحلول

هذا قد تغير بشكل كبير منذ النصيبه 1.4.يرجى الاطلاع 'إضافة جافا سكريبت أو CSS باستخدام الموارد في النصيبه ويكي

لجعل الصور وغيرها من الموارد التي يمكن الوصول إليها عالميا (وخاصة من CSS و JS الملفات), جبل لهم في التطبيقات الخاصة بك init() الطريقة:

mountSharedResource("/images/submit.jpg", new ResourceReference(MyComponent.class, "foo.jpg").getSharedResourceKey());

هناك على الاطلاق لا حاجة لتكرار الموارد في أي شكل من الأشكال.الموارد لا يجب أن تكون في نفس الحزم العنصر نفسه.في طلباتنا ، وضعنا عالميا تستخدم موارد مخصصة حزم (أقول com.على سبيل المثال.اسم التطبيق.الصور) ووضع فئة واحدة في ذلك (على سبيل المثالImagesScope.java) - نفسه بالنسبة JS و CSS.

للصور, لن تحتاج ResourceReference كما أنك لن تحتاج تلك المراجع المقدمة في التعليمات البرمجية الخاصة بك (باستثناء org.أباتشي.النصيبة.العلامات.html.صورة.صورة).ل JS و CSS استخدام

add(CSSPackageResource.getHeaderContribution(PanelOne.class, "PanelOne.css"));

بالمناسبة, أنا صاحب المكتبة الصغير يسمى wicketstuff-دمج-الموارد المتاحة من جيثب.باستخدام هذه المكتبة قد تخطي دليل التركيب في التطبيق الخاص بك init() و استخدام التعليقات التوضيحية بدلا من ذلك.

تحرير:رابط تحديث.للأسف والتوثيق في wicketstuff ويكي يبدو أن يكون قد انتهى الآن.هناك بعض المقالات على موقعنا بلوق على الرغم من.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top