2016-09-17 13 views
12

नवीनतम कोणीय-क्ली का उपयोग करके, मैंने नई परियोजना बनाई और सब कुछ ठीक काम करता है। इसके बाद, मैंने इसे Laravel 5.3 में एकीकृत करने की कोशिश की। मेरे पास यह प्रोजेक्ट systemjs के साथ काम कर रहा है, लेकिन मैं वेबपैक पर स्विच करना चाहता हूं और कोणीय-क्ली का लाभ उठाना चाहता हूं।कोणीय 2 + कोणीय-क्ली + लैरवेल 5.3

समस्या यह है कि कोणीय-cli.json में मैं निर्दिष्ट नहीं कर सकता कि सूचकांक index.php है, यह केवल HTML स्वीकार करता है।

असल में, मैं इस सेटअप के साथ कोणीय अनुप्रयोग शुरू नहीं कर सकता।

मैं इसे कैसे दूर कर सकता हूं?

+4

मैं angula2, कोणीय-CLI और laravel 5.3 के साथ काम कर रहा हूँ के साथ उपयोग करें, लेकिन मैं उन्हें अलग रखने के लिए, मैं laravel के साथ एक एपीआई का निर्माण और angular2 साथ में उपभोग और यह अच्छी तरह से काम करता है, आप एक ही दृष्टिकोण का उपयोग क्यों नहीं करते? –

+0

@ क्रिस्टियनसेपुल्वेडा इनपुट के लिए धन्यवाद (वाई) –

+0

@ क्रिस्टियनसेपुल्वेडा क्या आप कृपया इस्तेमाल किए गए स्ट्रक्चर के लिए यूआरएल डेमो प्रदान कर सकते हैं, मुझे यह भी चाहिए, लेकिन लार्वेल के साथ कोणीय 4 – sunil

उत्तर

8

अंत में मैंने लैरवेल और कोणीय 2 को अलग किया, क्योंकि क्रिस्टियन सेपुलवेद ने टिप्पणी में लिखा था। वैसे भी यह अनुशंसित दृष्टिकोण है।

मैं Laravel के साथ एपीआई बनाने के लिए और कोणीय 2.

+1

स्थापित करना चाहते हैं मैं इसे प्रयोग करने के लिए लार्वेल में एपीआई कैसे बना सकता हूं ? – huykon225

0

मैं एक ही समस्या थी और मैं क्या पाया इस related issue in their GitHub issues है:

आउटपुट फ़ोल्डर हमेशा पूरी तरह से बदल दिया जाएगा। आप सार्वजनिक/फ़ोल्डर का उपयोग अपनी index.php के लिए कर सकते हैं जिसे आपके आउटपुट फ़ोल्डर में कॉपी किया जाएगा, या ऐप को एक अलग फ़ोल्डर में आउटपुट किया जा सकता है और फ़ाइलों को स्वयं कॉपी कर सकता है।

यह डिज़ाइन द्वारा है और नहीं बदलेगा। यह एक बिल्ड आउटपुट फ़ोल्डर है, एक फ़ोल्डर तैनात नहीं है। आपको उन दो चरणों को अलग करना चाहिए।

तो, आप वास्तव में जो चाहते हैं उसे प्राप्त नहीं कर सकते हैं, लेकिन यह एकमात्र कामकाज है जो मैंने पाया।

3

मेरे मामले में मैं लार्वेल से कोणीय ऐप की सेवा करता हूं। मैं अभी भी अपनी संपत्ति बनाने के लिए वेबपैक का उपयोग करता हूं लेकिन एक गल्प कार्य है जो कोणीय index.html को index.blade.php होने की प्रतिलिपि बनाता है जिसमें से लार्वेल ऐप परोसता है। मैं निर्मित फ़ाइलों को/dist से/public

0

से कॉपी करने के लिए गल्प का भी उपयोग करता हूं, मुझे मेरे लिए केवल एक समाधान मिला।

  1. बनाने से ng build --prod
  2. क्लाइंट साइड कोड के लिए निर्माण का उपयोग करते हुए घूंट प्रति उत्पन्न Laravel सार्वजनिक dir gulp copy में फ़ाइलें (यहां आप जाँच कर सकते हैं पुराने निर्माण फ़ाइलें मौजूद रहने पर उन्हें निकालने के लिए)
  3. घूंट-ingect प्लगइन इंजेक्षन की नकल की का उपयोग करना लेआउट gulp inject

- इसका उपयोग सीआई में किया जा सकता है और स्वचालन उपकरण के साथ किया जा सकता है। नतीजतन हमारे पास inline.js और तीन *। ** bundle.js फ़ाइलें इंजेक्शन हैं। उसी मुख्य लेआउट में मैंने <base href="/example"> (आप यहां लार्वा मार्ग रूट रूट पथ में परिभाषित किसी भी परिभाषा का उपयोग कर सकते हैं) और टेम्पलेट फ़ाइल के अंदर जो इस पथ से लोड किया गया है (मेरे मामले 'example.blade.php') में कोणीय 2 रूट तत्व <st-example>Loading...</st-example>

जोड़ें

- इस सेट के द्वारा आपके पास रूट लैरवेल लेआउट है जिसमें कोणीय 2 रूट url href और इंजेक्शन स्क्रिप्ट फ़ाइलों को निर्माण से आवश्यक है। और वर्तमान मार्ग के लिए आपकी टेम्पलेट फ़ाइल में मूल तत्व है (इसमें सरल ब्लेड यील्ड ('सामग्री') द्वारा मुख्य लेआउट में शामिल है)।

पीएस आपको यह भी ध्यान रखना होगा कि यदि आप इसे लारवेल प्रोजेक्ट में एकीकृत करने के बाद कोणीय 2 में कुछ http अनुरोधों का उपयोग कर रहे हैं, तो यह प्रत्येक अनुरोध के लिए सीएसआरएफ सुरक्षा मिडलवेयर जोड़ देगा ... और यदि आपके पास अनुरोधों में कुछ नई त्रुटियां हैं जो पहले काम करती हैं तो शीर्षलेखों की जांच करें ।

0

चूंकि कोणीय-क्ली आपको index.php निर्दिष्ट करने की अनुमति नहीं देता है, तो बस इसे index.html निर्दिष्ट करें ... और लार्वेल रूटिंग में उचित मार्ग जोड़ें।इस तरह, उदाहरण के लिए:

Route::any('{path?}', function() { 
    return File::get(public_path() . '/index.html'); 
})->where("path", ".+"); 

बीटीडब्ल्यू, यह किसी भी अज्ञात मार्गों के लिए बस एक जाल है ... लेकिन मुझे लगता है कि आपको एक विचार मिलता है।

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