2013-03-27 16 views
8

RequireJS, bir CDN'den kütüphanelerin birisine yüklenmesine izin verir. CDN'nin kapalı olması durumunda, dosyanın başka bir yerde konumlandırılabileceği bir yedekleme seçeneği de olabilir (bu durumda, yerel olarak bulunduğunu varsayarız). Bu, tüm yol nesnelerinde yapılır. Örneğin, daha sonra lokal olarak CDN aşağı ise bir CDN dan JQuery yüklemek ve amacıyla Bunu yapmak:RequireJS optimiser ile bir CDN kullanma

paths : { 
    jquery : [ 
     'https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min', 
     'lib/jquery', 
    ]} 

Yukarıdaki örnek ilk lib/jquery dan sonra, CDN dan sorguyu bulmak çalışacaktı.

Ben requirejs optimize edici kullanırken, işler minified ve büyük bir dosyaya Karartılmış olsun izlenim altında duyuyorum Soru . Bir yedekleme seçeneği optimiser'de nasıl çalışır? Minified dosyasında yer alacak mı? Eğer öyleyse, bir CDN kullanmanın kesinlikle bir avantajı yoktur. Ancak, yedekleme seçeneği optimize edilmiş sürümde yer almıyorsa, CDN aşağı inerse optimize edilmiş kod nasıl başa çıkacaktır?

Cevaplarınız için şimdiden teşekkür ederiz.

cevap

3

Düzenli siteniz için en iyi duruma getiriciyi beslemek için kullandığınız farklı yapılandırma ayarlarına sahip olabilirsiniz. Bu durumda, jQuery içermemesi için optimizer sürümünüzde "boş" bir yapılandırma kullanırsınız. kombine/minified versiyon:

paths: { 
    jquery: "empty:" 
} 

daha detaylı bilgi için belgelere bakın: http://requirejs.org/docs/optimization.html#empty

+2

Evet, bunu biliyor, ama sonra o "yedekleme seçeneği" kullanımı şeydir. Yani, bu kod üretimde testten çok daha fazla kullanılacak. Bana Yedekleme seçeneği tamamen işe yaramaz, çünkü kimler değiştirilmemiş JavaScript kullanıyor? –

+0

Eğer unoptimized ile diğer modüller ile kombine edilmezse, o zaman evet iyi bir noktaya sahip olursunuz. Ancak, yedek dosyanızın indirilemeyeceğini söyleyen hiçbir şey yok. Ayrıca, bir CDN kullanırken başarılı bir şekilde zamanın yüksek bir yüzdesi yüklenecektir. – explunit

+2

Teşekkürler, bu son yorumda sorumu yanıtladı. Unoptimised tarafından birleştirilmemiş demek istiyorum. Bu seçeneğin neden mevcut olduğu hakkında hiçbir fikrim yok. CDN başarısız olursa, bu yedekleme seçeneği eşzamansız olarak yüklenirse çok iyi olurdu, ancak AMD ile elde edilmesi zor olabilir. James Burke, eğer bunu okuyorsanız (şansınız nedir!), Lütfen bunu düşünebilirsiniz. –