当您在加载器对象中设置test
键后的正则表达式时,是否会通过全部文件查看项目中的文件,并使用您指定的加载器加载它们,即使这些文件不是文件所需的你的入口点?这是否被放置在bundle.js
文件中?webpack装载机的工作文件是什么?
回答
不,它只会包含脚本所需的内容。
<img src={ require('../some/img.png') } />
是一种告诉Webpack您的源代码需要此映像才能运行的方式。
在生产Webpack构建中,这将被编译成类似<img src="http://yoursite/whatever/89de0f2.png" />
的东西。 require()
声明是从不执行,它被替换为有效的Javascript代码。这个替换的代码是bundle.js
中的内容。
然后将图像放入您指定的任何输出文件夹(如本地dist/
文件夹),并将其重命名为独特的东西,通常是文件内容的一些散列,从而产生89de0f2.png
。 (我为这个例子制作了这个名字,但通常看起来像这样)。
现在,当您上传该文件时,您的源代码将完全参考89de0f2.png
,以确保图像版本存在。这就是Webpack为您提供生产保证资产加载的方式。
如果您特别需要,Wepback将仅将img.png
放入您的dist/
文件夹中作为89de0f2.png
。任何其他图像将不会放入该文件夹中。
您可能还会询问base64编码图像并将它们直接放入您的bundle.js
文件中。在这种情况下,没有图像放入dist/
,但所有其他规则都会回复。 require()
调用仍被替换为有效的Javascript。
有一种情况,Webpack将需要多个资产。您可以要求模式,例如<img src={ require.context('./images', true, /\.png/) } />
,Webpack会将该目录中的所有png文件构建到dist/
文件夹中。有关更多上下文,请参见this Stackoverflow question。
所以任何webpack接触的方式或另一个需要通过来自'entry'文件的长文件路径? – mangocaptain
- 1. 的WebPack网工装载机不工作
- 2. 的WebPack主题装载机
- 3. 的WebPack SASS装载机,与字体面在SCSS文件CSS-装载机休息
- 4. 脚本装载机的WebPack不能正常工作2
- 5. 为什么的WebPack不能找到装载机
- 6. (阵营+的WebPack)形象开发中,但不生产(文件装载机+图像的WebPack装载机)
- 7. 为什么装载机从右到左在webpack中读取?
- 8. 区别:的WebPack CSS-装载机和原材料装载机
- 9. 的WebPack风格装载机和CSS-装载机
- 10. 的WebPack:通过文件装载
- 11. 入门触控笔装载机的WebPack
- 12. 的WebPack装载机动态查询
- 13. 使用其他装载机的Easy-webpack
- 14. vuejs下装载机的WebPack配置
- 15. 文件加载器,网址,装载机的WebPack不加载图像
- 16. 的WebPack URL和文件装载机不要角2种所需组件样式的工作
- 17. 什么是$意味着.hprof文件机器人工作室
- 18. 使用工人装载机VUE-CLI和的WebPack
- 19. Webpack 2装载机反向声明?
- 20. 安装文件是不是在客户机工作正常
- 21. qt framebuffer工作机制是什么?
- 22. “模块“” + loader.path +“”不是装载机的WebPack错误
- 23. 的WebPack不能总是解决TS装载机
- 24. 装载机使用没有相应的插件 - 角2的WebPack
- 25. Webpack中的-p是什么?
- 26. 什么是IOR文件,它是做什么的,它是如何工作的?
- 27. webpack-stream/gulp-webpack不解析巴贝尔装载机
- 28. 为什么不通过package.json安装webpack二进制文件?
- 29. Webpack中的规则vs装载器 - 有什么区别?
- 30. 在webpack中加载.otf字体文件的正确方法是什么?
也许有帮助:http://blog.andrewray.me/webpack-when-to-use-and-why/但不是它只是你需要的文件()专门 –