为什么使用webpack与电子

Rut*_*ger 15 webpack electron

我正在试验电子.我看到很多使用webpack的例子.

但为什么要使用像webpack这样的东西?因为据我所知,电子支持require('module').

Lok*_*kua 11

Webpack不仅仅是一个JS模块捆绑器; 它可以用于捆绑静态资源(例如图像的内联base64),编译Sass/Less/Stylus/CSS模块,消除死代码,树木抖动等等.使用适当的加载器和配置,只需要require('any-type-of-file.extension')积极开发.然而,根据我的个人经验,Webpack很有价值,因为它的开发服务器和热模块替换(HMR),使Live Reload感觉像黑暗时代的东西.

总而言之,您可以获得Gulp/Browserify/Rollup的所有组合功能,但是HMR位于顶部,所有这些都在一个工具中(以及批次和批次以及大量的装载程序;).

毫无疑问,设置Webpack是一个PITA,但是如果你打算在Electron应用程序上工作很长时间,那么单独从HMR中节省的时间是值得的.

  • 正如@ScottCoates已经说过的,在Electron中有一些热重新加载的选项,只需要观察文件系统的变化.Webpack中需要HMR的全部原因是因为没有任何方法可以通知浏览器更改.对于Electron而言,这不是必需的,它增加了一个不必要的复杂性,以使webpack HMR在Electron中工作. (4认同)
  • 电子编译,一个已经很流行的电子开发库,似乎支持HMR:https://github.com/electron/electron-compile#live-reload--hot-module-reloading (3认同)

apx*_*pxp 7

它不是用于电子的webpack.require函数是node.js的一部分,它是电子的基础.

有关node.js文档中模块的更多信息:https: //nodejs.org/dist/latest-v5.x/docs/api/modules.html

但只要webpack也可用作节点模块(https://www.npmjs.com/package/webpack),也可以使用带电子的webpack.此时,您还可以在生产中动态使用构建,因为节点和chrome在一个应用程序中可用.

为什么用webpack和电子?当您使用react或vue.js组件时,最好将组件分开.要将代码捆绑到一个应用程序中,您需要browserfy或webpack.这将是一个很好的原因,为什么要使用它.

  • 没有理由捆绑组件。编译步骤就足够了 (2认同)

Ana*_*tts 7

没有理由在Electron中使用Webpack,请查看电子编译以在Electron中使用Babel和LESS.

  • 如果您的webapp使用webpack并且您不想重写所有内容,该怎么办?如果您使用vue.js组件来构建代码,该怎么办?所以他们是理由. (12认同)
  • 为什么使用vue.js组件需要webpack (4认同)
  • 如果使用单个文件.Vue组件,则需要模块加载器. (2认同)
  • 已弃用... :) (2认同)