javascript - 使用 Express.js 制作的 Web 应用程序是否需要捆绑分发?应用程序的分发版本的目的是什么?
问题描述
我希望这个问题足够清楚,我会更深入地解释,但在此之前,我想先说我是 Web 开发的新手/新手。
我一直在自己开发一些应用程序,并且还学习了一些 udemy 课程,我难以理解的是您正在开发的 Web 应用程序的分发版本的目的是什么。
我首先开始了一个对 PHP、MySQL、Wordpress 有一些介绍的课程,重点是 HTLM/CSS 和 Javascript。本课程的最后一个项目是一个单页网站,它使用 Webpack 捆绑项目并创建项目的分发版本。
在此之后,我学习了一个课程,主要项目是一个多页面应用程序,它使用 Express.js 和 .ejs、Node.js、Bootstrap 和 PostgreSQL,但我确实注意到该应用程序的分发版本没有捆绑。
最后但并非最不重要的一点是,我做了另一门课程,将 React 用于客户端,最后有一个脚本用于生成分发包。
当我开始将我的项目移动到静态服务器并使用 PM2 让它们永远启动并运行时,我停了一会儿,想知道如果网站看起来相同,为什么甚至需要项目的分发版本,但我认为原因是它在浏览器上运行更顺畅。我只是在这里做假设,但我假设所有依赖项中的 javascript 都放在一个 .js 文件或一小组文件中,以使浏览器更容易处理网站?还用于版本控制?
但是,如果创建应用程序的分发版本会针对浏览器进行优化,那么 Express.js 怎么不提供呢?
也许这是一个非常愚蠢的问题,我仍然对很多这些东西感到困惑。也许是因为他们可以做类似的事情,比如 webpack 可以抛出一个服务器,这样你就可以看到你的应用程序正在运行,比如 React,但是要访问数据库,你需要通过 axios 或对 Express.js 等后端程序进行 api 调用拿来。但是 Express.js 是一个服务器,它可以对数据库进行查询调用,并允许您通过 views/.ejs 查看您的应用程序。
再说一次,对不起,如果这听起来真的很愚蠢,我只是不知道谁能问这些问题。
解决方案
推荐阅读
- javascript - 如何在引导程序中禁用折叠
- http - 如何在代理后面的 Julia 中发出 HTTP 请求?
- vue.js - VueJS 组件:无法获取渲染更新的集合
- windows-store - 如何仅为 Insider 构建制作 Windows Store 包?
- c# - 使用依赖注入的通用接口解析具体类是一个好的设计吗?
- java - 如何使用java复制现有列数据并在另一列中编辑它
- spring-batch - Spring Batch:使用不同的参数执行相同的作业
- c# - 枚举一个类的所有实例
- javascript - 滚动后删除动画
- reactjs - 为什么在 React Native 中我的页面转换之前会有一个白色的“加载屏幕”?