2015-03-04 10 views
10

मेरे पास एक मूल प्रोजेक्ट है जिसमें एक बाल मॉड्यूल शामिल है। मॉड्यूल का अपना bower.json है जो मॉड्यूल निर्भरता और .bowerrc निर्दिष्ट करता है जो निर्दिष्ट करता है कि इन फ़ोल्डर को किस डाउनलोड में डाउनलोड किया जाना चाहिए। ये निर्भरता मॉड्यूल एचटीएमएल में जुड़े हुए हैं।बोवर इंस्टॉल करते समय .bowerrc का स्थान निर्दिष्ट करना

मूल परियोजना नोड निर्भरताओं को प्रबंधित करने के लिए package.json का उपयोग करती है।

"scripts": { 
    "postinstall" : "./node_modules/.bin/bower install ./module/ --config.directory=\"./module/public/bower_components\"" 
} 

ध्यान दें कि:

उन दोनों npm install और cd module, bower install, cd ../ (मॉड्यूल निर्भरता के लिए) (माता-पिता निर्भरता के लिए), मैं जोड़ लिया है एक postinstall स्क्रिप्ट package.json को चलाने के लिए होने से बचने के लिए /module/public/bower_components में मॉड्यूल की निर्भरताओं को स्थापित करने के लिए मैं बोवर को प्राप्त करने का एकमात्र तरीका postinstall स्क्रिप्ट में directory स्पष्ट रूप से बताता था।

हालांकि ./module/.bowerrc में पहले से ही यह जानकारी है, इसलिए आदर्श रूप से मैं bower install को इसके बारे में जागरूक करना चाहता हूं। यह package.json को बनाए रखने में आसान बनाएगा और module अधिक पोर्टेबल बनाएगा।

मैं अपने मॉड्यूल के package.json में बोवर निर्भरता और postinstall स्क्रिप्ट के हस्तांतरण की कोशिश की है, माता पिता की package.json में postinstall हुक का उपयोग कर मॉड्यूल निर्देशिका में npm install चलाने के लिए। लेकिन यह दृष्टिकोण मॉड्यूल में समाप्त होता है। माता-पिता के node_modules फ़ोल्डर में निर्भरता डाउनलोड की जा रही है।

क्या इसे हल करने का कोई बेहतर तरीका है?

+0

आपको दो पैकेज प्रबंधकों की आवश्यकता क्यों है? शायद आप एनपीएम तक रह सकते हैं? – Magomogo

+0

@GrimurD अगर आप इस समस्या को हल करते हैं तो कृपया उत्तर स्वीकार कर सकते हैं –

उत्तर

3

बोवर कॉन्फ़िगरेशन निर्माण के लिए कॉन्फ़िगरेशन को हल करने के लिए प्राथमिकता के निम्न क्रम का उपयोग करता है।

--config
  • पर्यावरण चर
  • स्थानीय .bowerrc वर्तमान कार्यशील निर्देशिका
  • सभी .bowerrc फ़ाइलों ऊपर की तरफ निर्देशिका वृक्ष में स्थित के माध्यम से http://bower.io/docs/config/

    • CLI तर्क पर बोवर डॉक्स से

    • .bowerrc फ़ाइल उपयोगकर्ता के घर फ़ोल्डर में स्थित (~)
    • .bowerrc फ़ाइल स्थित है I n वैश्विक फ़ोल्डर (/)

    अपने मामले में आप package.json को उसी फ़ोल्डर में एक .bowerrc फ़ाइल डाल लेकिन अपने सेटअप काम कर पाने के लिए उपसर्ग मॉड्यूल/जनता के साथ सभी गुण कॉन्फ़िगर कर सकते हैं।

    मुझे पैकेज.जेसन में एक ही स्थान से सभी निर्भरताओं को प्रबंधित करने के आपके विचार को पसंद है।

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