تسلسل CSS و JS قبل الضغط؟ أدوات؟ أفضل الممارسات؟

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

  •  06-07-2019
  •  | 
  •  

سؤال

أنا أعمل على موقع من صفحة واحدة يدمج حوالي عشرة ملفات .JS وربما نصف دزينة. CSS.

معظم ملفات .js هي الإضافات jQuery. بصرف النظر عن ملف CSS الأساسي ، فإن ملفات CSS مخصصة للمكونات الإضافية JQuery المقابلة.

ضاغط يوي يبدو أنه مفضل لضغط ملفات CSS و JS. ومع ذلك ، فإنه يضغط فقط الملفات الفردية.

أود أيضًا الجمع بين ملفاتي و (بشكل مثالي) ينتهي به المطاف مع ملف .js وملف .css واحد (كلاهما مضغوط).

هل هناك أي أدوات مفضلة تتيح لك أتمتة دمج ملفات .js و .css في ملف واحد حتى يمكن تشغيلها من خلال ضاغط yui؟

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

المحلول 4

انتهى بي الأمر بالتعثر على هذا الخيار:

http://johannburkard.de/blog/programming/javascript/automate-javascript-cripression-with-yui-compressor--packer.html

إنه ملف دفعة يجمع بين الإصدارات المحلية من التسلسل وضاغط Yui و Dean Edward's Packer.

في النهاية ، على الرغم من ذلك ، لم أتمكن من جعل باكر يعمل محليًا. ظل يفسد بلدي .js.

لذلك ، تخطيت هذا الجزء ثم قمت بتشغيل رمز Yui المضغوط من خلال Packer عبر الإنترنت وشاهدت زيادة إضافية بنسبة 1 ٪ في الضغط ، لذلك فقط حذفت مرحلة Packer.

في النهاية ، استخدمت الحل الإرشادات المرتبطة أعلاه مع ملف دفعي معدّل قليلاً:

اكتب .. js-in*> jb.js java -jar .. yui build yuicopressor -2.4.2.

شكرا لجميع الحلول الأخرى (صالحة) كذلك. الكثير من المعلومات الجيدة!

نصائح أخرى

إذا كنت تعرف قليلاً ، PHP ، فقد وجدت أن هذا هو أفضل طريقة: http://www.thedanglybits.com/2007/06/21/minify-your-external-javascript-css-with-php/

قد ترغب في التحقق من سبوكت (http://www.getsprockets.com/).

كنت أطرح هذا السؤال فقط في اليوم الآخر. بعد تعب تجوب الويب ، توصلت إلى هذا الحل المخترق (ملف دفعة Windows).

@echo off
set TUNA_ROOT=C:\path\to\webroot
set YUI_COMPRESSOR_PATH=C:\path\to\yuicompressor-2.4.2\build
set TEMP_JS_FILE=%TUNA_ROOT%\scripts\all_scripts_temp.js
set OUTPUT_JS_FILE=%TUNA_ROOT%\scripts\tuna_min.js
if exist "%TEMP_JS_FILE%" del "%TEMP_JS_FILE%"
if exist "%OUTPUT_JS_FILE%" del "%OUTPUT_JS_FILE%"
type "%TUNA_ROOT%\Scripts\MicrosoftAjax.js" >> "%TEMP_JS_FILE%"
echo. >> "%TEMP_JS_FILE%"
echo. >> "%TEMP_JS_FILE%"
type "%TUNA_ROOT%\Scripts\MicrosoftMvcAjax.js" >> "%TEMP_JS_FILE%"
echo. >> "%TEMP_JS_FILE%"
echo. >> "%TEMP_JS_FILE%"
rem ...and so on...
java -jar "%YUI_COMPRESSOR_PATH%\yuicompressor-2.4.2.jar" -v --charset utf-8 -o "%OUTPUT_JS_FILE%" "%TEMP_JS_FILE%"
if exist "%TEMP_JS_FILE%" del "%TEMP_JS_FILE%"

لكنني أحب ذلك حقًا إذا كانت هناك طريقة أكثر تلقائيًا لفعل الأشياء.

أستخدم هذا الموقع بشكل حصري تقريبًا لضغط ملفات JS و CSS:
http://www.lotterypost.com/js-cirmress.aspx
http://www.lotterypost.com/css-compress.aspx

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