ठीक है, मुझे लगता है कि मैंने इसे हल कर लिया है और मुझे विश्वास है कि प्रलेखन अस्पष्ट है और प्रक्रिया को स्पष्ट करने के लिए अद्यतन करने की आवश्यकता है।
मैंने अपना और निर्देशिका दोनों के लिए क्रमशः अपने विषय के requirejs-config.jsभीतर से स्थानांतरित कर दिया और अब मेरे अन्य आवश्यकताओं में मुख्य के साथ मेरा आवश्यकताएँ कॉन्फ़िगर किया गया है ।web/jswebMagento_Theme<Vendor>/<theme>requirejs-config.js
तो, ऐसा प्रतीत होता है कि आपको requirejs-config.jsथीम / मॉड्यूल आवश्यकताओं के आधार पर फ़ाइल को निम्नलिखित स्थानों में शामिल करना होगा।
थीम स्तर
app/design/frontend/<Vendor>/<theme>/requirejs-config.js
मॉड्यूल स्तर
app/design/frontend/<Vendor>/<theme>/<Module_Name>/requirejs-config.js
इसलिए, requirejs-config.jsअपने विषय के लिए आपको अपने घटक को एक पथ पर ले जाना चाहिए और फिर shimकिसी भी निर्भरता को घोषित करने के लिए उपयोग करना चाहिए:
var config = {
map: {
'component': 'js/component'
},
shim: {
'component': {
deps: ['jquery']
}
}
};
फिर आपको एक <script>टैग के माध्यम से घटकों के प्रारंभिककरण को पकड़ने के लिए एक टेम्पलेट बनाने की आवश्यकता होगी (जब तक कि आप इसे .phtml फ़ाइल के भीतर किसी तत्व से सीधे संलग्न नहीं करते हैं) यदि यह वह मार्ग है जिसे आप नीचे जाना चाहते हैं, तो निम्न सामग्री शामिल करें:
<script type="text/x-magento-init">
{
"*": {
"js/component": {} // Not entirely sure what {} is and what I'm passing here
}
}
</script>
वैकल्पिक रूप से, इसे एक तत्व से बांधें:
<script type="text/x-magento-init">
{
"#element": {
"js/component": {} // Not entirely sure what {} is and what I'm passing here
}
}
</script>
फिर बस अपने लेआउट निर्देशों में .phtml टेम्प्लेट को शामिल करें, उदाहरण के लिए, मैंने बॉडी नोड के नीचे default.xmlस्थित खदान के भीतर मेरा app/design/frontend/<Vendor>/<theme>/Magento_Theme/layoutउल्लेख किया और संदर्भित किया:
<block class="Magento\Framework\View\Element\Template" name="theme.js" template="Magento_Theme::html/js.phtml" />