babel vs babel-core vs babel-loader vs babel-preset-2015 vs babel-preset-react vs babel-polyfill

我建立的WebPack我的阵营项目之间糊涂了babelbabel-corebabel-loaderbabel-preset-2015babel-preset-react我知道需要Babel才能将ES7或ES6代码转换为ES5,但在我中,package.json我安装了除Babel以外的所有这些依赖项,它们也都作为devDependencies

有人可以解释一下所有这些之间的区别以及为什么我的项目需要所有这些吗?难道没有任何一个依赖可以取代它们吗?如果它们是如此重要,为什么将它们包含为 devDependencies