[英]webpack not copying images
我試圖導入已經捆綁在webpack中的本地軟件包。 當我構建一個應用程序時,除了Webpack不會從該內部程序包復制圖像,字體等外,其他一切看起來都不錯。 任何想法出什么事了嗎?
當我嘗試引用自定義庫時,該庫已捆綁在一起:
- dist
-- asdfjlsjdflasdjflsdaf.ttf
-- sdjflsjdfasjdflsjdfsd.eot
-- mylibrary.js
僅復制mylibrary.js。 因此父應用看起來像:
- dist
-- mylibrary.js
-- parentapp.js
- packages
-- mylibrary
--- src...
--- dist...
問題可以解決:
使用webpack復制圖像和字體的方法是使用GlobCopyWebpackPlugin。
它是如何工作的(我不太確定您當前的Webpack配置是什么樣子),但讓我們來看看這是否對您有幫助。 因此,您可以為不同的環境保留單獨的webpack文件-現在說說prod和dev。 創建webpack.config.dev.js后,可以在“ plugins”屬性內使用GlobCopyWebpackPlugin。 如下所示:
new GlobCopyWebpackPlugin({
"patterns": [
"Assets"
],
"globOptions": {
"cwd": path.join(process.cwd(), "src"),
"dot": true,
"ignore": "**/.gitkeep"
}
}),
“資產”是存放字體,圖標,多媒體等的文件夾。
然后您可以在package.json中配置任務
"scripts": {
"serve": "npm run -s generatelocalefiles && node --max_old_space_size=4096 ./node_modules/webpack-dev-server/bin/webpack-dev-server.js --config webpack.config.dev.js --port=4300",
}
文件夾結構如下所示(以防萬一)
-src
-app
-assets
-package.json
-webpack.config.dev.js
-webpack.config.prod.js
希望這可以幫助!
最好的理解方法是查看webpack如何處理圖像,字體等。
這是一個使用引導程序並具有所需概念的模塊。
index.html也使用引導程序樣式和一個字形。 該字形(和所有引導程序)使用引導程序二進制文件中的一個圖像。
構建模塊之后,可以比較原始引導二進制文件(即node_modules/bootstrap/dist/css/bootstrap.css
)和捆綁的輸出文件(即dist/bundle.js
)中dist/bundle.js
。 您可以在這些文件中搜索glyphicons-halflings-regular.svg
。
簡單的webpack
(1)需要由您通過裝載程序進行配置。 (2)將由webpack自動照顧,前提是該module.rules
。webpack config中的規則對於圖像/字體正常工作。
希望這可以使事情變得清晰。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.