gpt4 book ai didi

reactjs - React-engine 与其他模板引擎对比

转载 作者:行者123 更新时间:2023-12-03 13:22:35 25 4
gpt4 key购买 nike

我想使用 paypal 的 React Engine ( https://github.com/paypal/react-engine ),但我有一些疑问:

与 Handlebars 等其他模板引擎相比有哪些优势?

为什么上传 .jsx 文件,而不是(jsx 预编译/转换的).js 文件? (这个应该更快,因为不必在服务器上处理转换)。

我一直在研究,但我很困惑。

谢谢

最佳答案

react-engine 之间的主要区别而模板引擎仅当浏览器允许用户与浏览器页面交互时才使用。然而,机器如何访问个人数据很重要。

假设我们要运行一个简单的网页。只是一个滚动和打开的文本信息。使用模板引擎,例如 Handlebars.js通常,当浏览器请求到达服务器时,它会尝试弄清楚如何响应以及做什么。也就是说,模板引擎可以引用从存储到本地且可访问的源中的文件中提取的现有数据。这些正在加载有关站点模板文件的所有已定义数据( headmetatitle 等),并呈现不完整的 HTML字符串。然后,此HTML被发送回浏览器并呈现。

react-engine ,在同一侧恰好使用相同的渲染机制。但是,它使用 JSX 而不是模板引擎语义。 ,或者如果我们愿意,我们也可以使用 JavaScript JSX 因此,比模板引擎更广泛。 Hajime Yamasaki Vukelic 的一篇很棒的文章从不同角度遵守 JSX and HTML templates 之间的关注点分离.

With template engines, you feed the library a string (usually but not necessarily HTML), which is then converted into a piece of JavaScript code which generates virtual DOM structures when executed. At design time, templates are just strings, so we don’t have direct access to the surrounding code. For instance, we can’t import helper functions, or call methods. These things are only possible through abstractions called directives (and possibly other names depending on where you are coming from). Directives are the glue between the HTML and the JavaScript.

到目前为止一切顺利,两种解决方案之间没有相关差异。指向下一个或上一个简单网页的链接非常简单<a href="/webpage>Next</a>元素。

目前,当我们决定实现一些交互时, react-engine 将成为赢家。而 react-engine 渲染不需要JavaScript要在客户端运行,它将在搜索上启用 SEO

模板引擎也有这种SEO支持,但影响较小。我们不能在这里全部运行JavaScript呈现 HTML。甚至像 jQuery 这样的库需要实时访问浏览器窗口对象,该对象无法在服务器端轻松模拟。因此模板引擎的效率会降低。

总而言之,模板引擎可以做与 react-engine 相同的事情渲染。也许不是同样容易或同样快,但两种工具都是合格的。您还可以阅读另一篇精彩文章thread关于这个话题。

关于reactjs - React-engine 与其他模板引擎对比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32619168/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com