我开始使用开发服务器端渲染应用程序webpack
的环境。我对每个 webpack 包在开发和生产(运行时)环境中的作用感到非常困惑。node/express
ReactJS
react-router
以下是我的理解总结:
webpack
: 是一个包,一种将 Web 应用程序的不同部分连接在一起并捆绑在一个 .js 文件中的工具(通常是 .js 文件bundle.js
)。然后将结果文件提供给应用程序加载的 prod 环境,并包含运行代码所需的所有组件。功能包括收缩代码、缩小等。
webpack-dev-server
: 是一个提供服务器来处理网站文件的包。它还bundle.js
从客户端组件构建单个 .js 文件 ( ),但在内存中提供它。它还具有选项 ( -hot
) 来监视所有构建文件并在代码更改时在内存中构建一个新包。服务器直接在浏览器中提供服务(例如:)http:/localhost:8080/webpack-dev-server/whatever
。内存加载、热处理和浏览器服务的结合让用户可以在代码更改时在浏览器上更新应用程序,非常适合开发环境。
如果我对上面的文字有疑问,我真的不确定下面的内容,所以如果有必要请告诉我
使用webpack-dev-server
with时的一个常见问题node/express
是它webpack-dev-server
是一个服务器,就像node/express
. 这使得这个环境很难同时运行客户端和一些节点/快速代码(API 等)。注意:这是我所面临的,但很高兴能更详细地理解为什么会发生这种情况......
webpack-dev-middleware
:这是一个与webpack-dev-server
(内存捆绑,热重载)功能相同的中间件,但格式可以注入到server/express
应用程序中。这样,您就拥有了一种webpack-dev-server
位于节点服务器内部的服务器(即)。 哎呀:这是一个疯狂的梦想???这篇文章如何解决开发和生产等式并使生活更简单
webpack-hot-middleware
:这个...卡在这里...在寻找时发现了这块webpack-dev-middleware
...不知道如何使用它。
尾注:对不起,有任何错误的想法。我真的需要帮助才能在复杂的环境中理解这些变体。如果方便,请添加更多包/数据来构建整个场景。