नॉकआउट HTML टेम्पलेट में त्वचा की छवि पथ कैसे निर्दिष्ट करें?


10

मैं Magento_Paypal/web/template/payment/paypal-express.htmlटेम्पलेट में एक आइकन छवि जोड़ने की कोशिश कर रहा हूं । आइकन में स्थित है web/images। मैं निम्नलिखित कोड के बराबर का उपयोग करना चाहूंगा, जो ईमेल HTML टेम्पलेट में काम करता है, लेकिन यह विशेष टेम्पलेट नहीं:

<img src="{{view url='images/icon-paypal.png'}}">

चूंकि घुंघराले ब्रेस चर इस HTML टेम्पलेट में काम नहीं करते हैं, आप विषय की web/imagesनिर्देशिका में मौजूद छवि का संदर्भ कैसे देते हैं ?

जवाबों:


24

आप कॉल करने की आवश्यकता functionमें jsटेम्पलेट से।

require.toUrl('images/icon-paypal.png');

3
यह वही है जो मैं देख रहा था - स्वीकार किया गया! यहाँ उन दिलचस्पी के लिए अंतिम छवि टैग है: <img data-bind="attr: { src: require.toUrl('')+'images/icon-paypal.png' }" alt="">।
— शाम

2
क्या यह बेहतर नहीं होगा require.toUrl('images/icon-paypal.png');? मैंने इसे आज़माया नहीं है, मैं बस यह मानकर चल रहा हूँ कि काम करता है।
— बेन क्रुक

1
@BenCrook मैं पुष्टि कर सकता हूं कि आपका सुझाव काम करता है।
— डैरेन फेल्टन

धन्यवाद @Meogi, अगर कोई और इसकी पुष्टि कर सकता है तो मैं उत्तर को अपडेट करूंगा। मैं भी atm की जाँच करने के लिए Magento 1 पर बहुत व्यस्त हूँ।
— बेन क्रुक

1
@BenCrook मैंने जाँच की और पुष्टि कर सकता है कि आपका समाधान काम करता है
— राफेल Cz।

3

यदि आप phtml फ़ाइल में सिर्फ एक छवि पथ जोड़ने का प्रयास कर रहे हैं, तो आपको नीचे दिए गए तरीके का पालन करना चाहिए,

<img src="<?php echo $block->getViewFileUrl('images/image.png') ?>">\

नॉकआउट तरीके से ऐसा करने के लिए:

* .Phtml फ़ाइल से विंडो में एक चर जोड़ने का प्रयास करें:

<script>
  window.imgpath = '<?php echo $block->getViewFileUrl('images/image.png') ?>';
  </script>

और उस चर को खिड़की से पढ़ना:

  function someFunction() {
  var imgPath = window.imgpath;
  }

अपना छवि कोड बदलें:

<img alt="" data-bind="attr: { src: someFunction() } "/>

लेकिन उस विंडो पथ को आपको सिर के हिस्से में कॉल करने की आवश्यकता होगी, इसलिए कोए का उपयोग करना बेहतर होगा।
— सुनील पटेल

3

phtml में js वैरिएबल बनाएं

<script>
  var imgpath = '<?php echo $block->getViewFileUrl('images/image.png') ?>';
</script>

अब नया js फंक्शन बनाएं

getImagepaypal: function() {
                return window.imgpath;
            }

आप HTML फ़ाइल में

 <img alt="" data-bind="attr: { src: getImagepaypal() } "/>

क्या आप मुझे बता सकते हैं कि कस्टम ओवरराइड में पूरा js और html फाइल कैसे बनाते हैं और xml में कैसे जोड़ें?
— सरफराज सिपाई

क्या आप अपने मॉड्यूल में मैग्नेटो डिफ़ॉल्ट js और html को ओवरराइड करना चाहते हैं?
— कासर सत्ती

हाँ मैं "Magento_CheckoutAgreements" फ़ाइलों को phtml, js और html से ओवरराइड करना चाहता हूँ।
— सरफराज सिपाई


मुझे पता है कि मॉड्यूल कैसे बनाना / ओवरराइड करना है, लेकिन मैं नहीं जानता कि कस्टम विषय ओवरराइड में "js" और "html" को कैसे ओवरराइड किया जाए इसलिए मैं यह जानना चाहता हूं।
— सरफराज सिपाई

0

आप इसका उपयोग प्रत्येक मैगनेटो में बिना किसी आवश्यकता के जेएस फाइलों की आवश्यकता कर सकते हैं - इसके विक्रेता / मैगनेटो / मॉड्यूल-थीम / व्यू / फ्रंटेंड / टेम्प्लेट / पेज / जेएस / आवश्यकता_जैसेफिल्म से आते हैं।

require.s.contexts ._। config.baseUrl
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.