ठीक है, मुझे लगता है कि मैंने इसे हल कर लिया है और मुझे विश्वास है कि प्रलेखन अस्पष्ट है और प्रक्रिया को स्पष्ट करने के लिए अद्यतन करने की आवश्यकता है।
मैंने अपना और निर्देशिका दोनों के लिए क्रमशः अपने विषय के requirejs-config.js
भीतर से स्थानांतरित कर दिया और अब मेरे अन्य आवश्यकताओं में मुख्य के साथ मेरा आवश्यकताएँ कॉन्फ़िगर किया गया है ।web/js
web
Magento_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" />