2014-10-16 19 views
5

लोड हो रहा है मेरे एम्बर सीएलआई ऐप में वर्तमान में 3 एमबी फ़ाइल डाउनलोड करना शामिल है, जिनमें से अधिकांश में सामान्य पुस्तकालय जैसे कि jQuery, एम्बर, बूटस्ट्रैप इत्यादि शामिल हैं। 3 एमबी बड़ा नहीं है, लेकिन यह धीमी कनेक्शन पर उल्लेखनीय हो जाता है, इसलिए मैं बाहर निकलना चाहता हूं सभी आम पुस्तकालयों और उन्हें बजाय सीडीएन से प्राप्त करें। विचार यह है कि उन्हें ब्राउजर द्वारा कैश किया जाएगा ताकि जब भी मैं अपना ऐप अपडेट करूं (जो इस समय अक्सर होता है) उन्हें फिर से डाउनलोड करने की आवश्यकता नहीं होती है। मैंने this प्रश्न पढ़ा है, जो बताता है कि index.html पर <script...> को आसानी से जोड़ना आसान है, लेकिन मैं यह नहीं समझ सकता कि उन्हें उन पुस्तकालयों को vendor.js में पैकेज न करने के लिए एम्बर को कैसे बताया जाए।एम्बर सीएलआई सीडीएन से deps?

उत्तर

6

brocfile.js में (ember-cli-build.js नए संस्करण में) CDN यूआरएल के लिए उपयोगी करने के लिए

var app = new EmberApp({ 
    vendorFiles: { 
    'jquery.js': false, 
    'handlebars.js': false, 
    'ember.js': false 
    } 
}); 

अब आपका index.html वर्ष फैशन रास्ते में शामिल उन लोगों निर्माता बदल सकते हैं और है कि काफी तथ्य का आनंद प्रत्येक उपयोगकर्ता ब्राउज़र में पहले से ही jquery कैश किया गया है भले ही वे आपकी साइट पर पहले नहीं गए हों।

-1

docs आम तौर पर उस के लिए एक जवाब है:

आप तारीख तक बोवर, एक पैकेज प्रबंधक है कि अपने सामने के अंत निर्भरता रहती है (JQuery, एंबर सहित, और QUnit) स्थापित करने के लिए की आवश्यकता होगी। यह चल रहा है उतना ही आसान है:

आप अपने bower.json फ़ाइल की जाँच यदि आप jQuery और अन्य सभी libs, bower uninstall उन्हें मिलेगा और आपका काम हो।

+0

मुझे लगता है कि वह इस [node.js मॉड्यूल] (https://github.com/niftylettuce/express-cdn) – George

-1

यह कुछ ऐसा है जो आप एम्बर-क्ली के साथ डिफ़ॉल्ट रूप से प्राप्त करते हैं। From the manual:

जब पर्यावरण उत्पादन है (उदाहरण के ember build --environment=production), ऐड-ऑन स्वचालित रूप से उनके फ़ाइल नाम के अंत करने के लिए एक md5 checksum जोड़कर अपने जे एस, सीएसएस, PNG, JPG, और gif संपत्ति फिंगरप्रिंट होगा (जैसे assets/yourapp-9c2cbd818d09a4a742406c6cb8219b3b.js) । इसके अतिरिक्त, आपका एचटीएमएल, जेएस, और सीएसएस फाइलों को नया नाम शामिल करने के लिए फिर से लिखा जाएगा।

फिर आप संशोधित कर सकते हैं अपने Brocfile.js यह बताने के लिए कि अपने CDN के लिए आधार यूआरएल है:

prepend - डिफ़ॉल्ट: '' - स्ट्रिंग संपत्ति के सभी से जोड़ें करने के लिए। जैसे https://subdomain.cloudfront.net/

+0

की लाइनों के साथ कुछ का जिक्र कर रहा था सीडीएन के संबंध में फिंगरप्रिंट के साथ क्या फायदा है? – SuperUberDuper

+0

@SuperUberDuper फिंगरप्रिंटिंग आपको सीडीएन – George

+0

पर कैश की गई फ़ाइलों का सिरदर्द बचाता है कुछ सीडीबी में एम्बर ऐप को तैनात करने का सबसे अच्छा तरीका क्या है? – SuperUberDuper

संबंधित मुद्दे