<base href="">
देव और उत्पादन के लिए
के लिए एक अलग
<base href="">
देव और उत्पादन के लिए
के लिए एक अलग
सबसे अच्छा है कि मैं क्या पाया अब तक (HtmlWebpackPlugin विकल्प) config में इस संपत्ति डाल करने के लिए किया गया था:
new HtmlWebpackPlugin({
...
baseUrl: process.env.NODE_ENV == 'development'?'/':'/app/'
})
और फिर उत्पादन index.html में यह:
<base href="<%= htmlWebpackPlugin.options.baseUrl %>" />
आप एक है, तो template
विकल्प एक HTML फ़ाइल पर सेट है तो प्लग-इन का संस्करण 2.x कोई प्रतिस्थापन नहीं करेगा। index.ejs
करने के लिए अपने index.html
फ़ाइल का नाम बदलें आप webpack उपयोग कर रहे हैं आप निश्चित रूप से output.publicPath
सेट करना होगा
new HtmlWebpackPlugin({
...
template: './src/index.ejs',
baseUrl: process.env.NODE_ENV == 'development'?'/':'/app/'
})
और,:
इस मामले में, आप @ stever के जवाब संशोधित करने के लिए इस प्रकार की आवश्यकता होगी एक ही मूल्य के लिए। देखें HtmlWebpackPlugin injects relative path files which breaks when loading non-root website paths
अब यह करना आसान है।
अपनी परियोजना में आधार href-webpack-प्लग-इन इंस्टॉल:
npm install --save-dev base-href-webpack-plugin
और webpack फ़ाइल में इस कोड को आयात:
// Import package
const { BaseHrefWebpackPlugin } = require('base-href-webpack-plugin'); // Or `import 'base-href-webpack-plugin';` if using typescript
// Add to plugins
plugins: [
new BaseHrefWebpackPlugin({ baseHref: '/' })
]
संदर्भ: https://github.com/dzonatan/base-href-webpack-plugin
किसी कारण से <% = htmlWebpackPlugin.options.baseUrl%> अब दिए गए बेस यूआरएल को कभी भी पार्स नहीं किया जाता है। – RVandersteen
एचटीएमएल वेबपैकप्लगिन के संस्करण 2.x ने बदल दिया कि टेम्पलेट कैसे प्रबंधित किए जाते हैं, इसलिए पुरानी प्रतिस्थापन अब काम नहीं करते हैं। Https://github.com/ampedandwired/html-webpack-plugin/blob/master/docs/template-option.md – pards
देखें मैं 'npm install --save-dev base-href-webpack-plugin' का उपयोग करता हूं। [यहां बताया गया है कि कैसे!] (Https://www.npmjs.com/package/base-href-webpack-plugin) – praHoc