2015-02-12 10 views
7

मुझे लैरवेल एलिक्सीर के साथ कुछ परेशानी हो रही है और किस क्रम में चीजों को निष्पादित किया गया है। मुझे विश्वास करने दिया गया है कि इलिक्सीर कॉल को चेन करने से उन्हें सिंक्रनाइज़ेशन निष्पादित करने के लिए मजबूर किया जाएगा, लेकिन मेरे पास ऐसे मुद्दे हैं जहां कुछ परिस्थितियों में कुछ आदेश निष्पादित नहीं होते हैं या किसी ऑर्डर में निष्पादित नहीं होते हैं जिसका अर्थ है कि वे ठीक से पूरा नहीं करते हैं ।लैरावेल एलिक्सीर कमांड के असिंक्रोनस निष्पादन

मेरा पहला मुद्दा यह है कि dependencies.js फ़ाइल version() समारोह से संस्करणीकृत किया जा रहा कभी नहीं था जब तक मैं दो scripts() कार्यों दौर बदली, तो dependencies.js के लिए एक दूसरा भाग गया था।

एक और मुद्दा यह है कि जब मैं gulp फ़ंक्शन के माध्यम से कार्य चलाता हूं, तो कई बार, फ़ॉन्ट-भयानक फोंट को बिल्ड निर्देशिका में कॉपी किया जाता है। हालांकि, gulp watch चलाते समय वे अक्सर छोड़े जाते हैं।

मैं इन दोनों समस्याओं के आसपास काम करने में सक्षम हूं, लेकिन मैं इस तरह की छोटी चीजें देख रहा हूं जो मुझे लगता है कि मैं निष्पादन आदेश और इसके आसपास subtleties पूरी तरह से समझ में नहीं आता है। क्या किसी को पता है कि मुझे कुछ याद आ रही है?

धन्यवाद।

mix.sass("app.scss", 'public/css/', { 
     includePaths: [paths.bootstrap + 'stylesheets/'] 
    }) 
    .scripts([ 
     'js/app.js' 
    ], 'public/js/app.js', paths.assets) 
    .scripts([ 
     // paths.jquery + "dist/jquery.js", 
     paths.bootstrap + "javascripts/bootstrap.js", 
     paths.assets + "js/freelancer/classie.js", 
     paths.assets + "js/freelancer/cbpAnimatedHeader.js", 
     paths.assets + "js/freelancer/jqBootstrapValidation.js", 
     paths.assets + "js/freelancer/contact_me.js", 
     paths.assets + "js/freelancer/freelancer.js" 
    ], 'public/js/dependencies.js', './') 
    .version([ 
     'public/js/dependencies.js', 
     'public/js/app.js', 
     'public/css/app.css']) 
    .copy(paths.bootstrap + 'fonts/bootstrap/**', 'public/build/fonts') 
    .copy(paths.assets + 'fonts/font-awesome/', 'public/build/fonts'); 
+0

मुझे लगता है कि अमृत अभी तक इस सुविधा को लागू नहीं करता है। इस पर एक नज़र डालें: https://github.com/gulpjs/gulp/blob/master/docs/recipes/running-tasks-in-series.md। मुझे लगता है कि आपको elixir हैक करना होगा या आप जो चाहते हैं उसे हासिल करने के लिए सिर्फ गल्प का उपयोग करना होगा। आप इलीक्सिर सामग्री ले सकते हैं और उन्हें इलीक्सिर के बाहर उपयोग कर सकते हैं। –

+0

ऐसा इसलिए है क्योंकि गल्प डिफ़ॉल्ट रूप से चीजों को सिंक्रनाइज़ रूप से निष्पादित करता है, हालांकि यदि आप elixir package.json फ़ाइल को देखते हैं तो आप देखेंगे कि इसमें रन-अनुक्रम है। अपने कार्यों async चलाने के लिए इसका प्रयोग करें। –

उत्तर

1

Laravel अमृत हाल ही में अपडेट किए गए हैं और पहली चीजों के बारे में इस लेख में बात करती है जिस क्रम की बातों को चलाने है में से एक:

यहाँ मेरी gulpfile.js कोड है।

यह एक बग जो नवीनतम संस्करण में तय हो गई है किया गया है लगता है:

https://laravel-news.com/2015/07/laravel-elixir-version-3-is-released/

+0

ग्रेट, धन्यवाद। अजीब लगता है कि यह पहले स्थान पर नहीं बल्कि महान समाचार था। – Simon

+0

मुझे लगता है कि अनुक्रम में कार्यों को ट्रिगर करने के बीच (1) के बीच एक अंतर है, और (2) यह सुनिश्चित करना कि उस अनुक्रम में अगले कार्य को निष्पादित करने से पहले पूर्व कार्य पूरा हो गया है। यह अनुक्रमिक होने के लिए पूरी तरह से संभव है, फिर भी असीमित। Elixir v3 सुनिश्चित करता है कि अनुक्रम अनुक्रम में चलते हैं, लेकिन AFAICT, यह synchronicity को संबोधित नहीं करता है, इसलिए किसी के सेटअप के आधार पर कुछ बिल्ड अभी भी विफल हो सकते हैं। –

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