【问题标题】:How can I implement Webpack for a EJS Reactjs Express MongoDb project?如何为 EJS Reactjs Express MongoDb 项目实现 Webpack?
【发布时间】:2021-05-08 13:48:44
【问题描述】:
  • 该项目正在使用 EJS、Express/NodeJs、MongoDB,我已向其中添加了 ReactJs。
  • 现在我想实现 Webpack 以将 EJS 和 ReactJs 文件捆绑在一起。
  • 项目最终必须转换为 ReactJs,但现在我们还需要 Bundle EJS。

有什么办法可以做到吗?我需要帮助。

【问题讨论】:

    标签: javascript reactjs mongodb express ejs


    【解决方案1】:

    EJS 可以运行客户端,React 可以运行服务器端,但是典型的 Express/EJS 设置运行 EJS 服务器端并将纯 HTML 传递给客户端,而典型的 React 设置在客户端运行 React 代码(并且可能会添加服务器端渲染作为奖励)。

    假设您没有做任何非常不典型的事情(在这种情况下,您真的需要更详细地解释您的设置),那么简短的回答是:不。

    你需要你的 EJS 在服务器端运行,所以把它放在一个包中然后发送给客户端是没有意义的。


    如果你想从 HTML 的经典服务器端渲染过渡到 React 系统,那么典型的方法是逐页进行。 \

    您可以为您替换的页面提供一个基本的静态引导 HTML 文档,或者为这些页面使用 SSR 系统获得创意(或者巧妙地混合路由规则,或者只是放置一个反向代理来转移不同的 URL到 Next.js 服务器或 Express 服务器,具体取决于它们是否已迁移)。

    另一种方法是编写一系列小的 React 组件来替换页面的各个组件(例如导航栏应用程序),并让入口点包括对每个组件的多个 ReactDOM.render 调用。

    不过,后一种方法根本不适合涉及 SSR。

    无论哪种方式:您都不会将服务器端 EJS 代码发送到客户端,因此它不会与 React 代码捆绑在一起。

    【讨论】:

    • 所以如果我将某些 ejs 视图转换为 reactjs 组件并捆绑它们,那会是一种方便的方法吗?我的意思是 ejs 和 react 组件可以在不影响性能的情况下无缝协作吗?
    猜你喜欢
    • 2021-05-06
    • 2020-12-12
    • 1970-01-01
    • 2017-06-02
    • 2021-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-01
    相关资源
    最近更新 更多