Javascript 如何将变量从一个EJS页面传递到另一个EJS页面

Javascript 如何将变量从一个EJS页面传递到另一个EJS页面,javascript,node.js,express,Javascript,Node.js,Express,您好如何将变量从一个EJS页面传递到另一个EJS页面。例如,我有这个页面 // insertion.ejs // <!DOCTYPE html> <html lang=”en”> <head></head> <header> <% include ../views/header %>

您好
如何将变量从一个EJS页面传递到另一个EJS页面。
例如,我有这个页面

    // insertion.ejs //




<!DOCTYPE html>
            <html lang=”en”>
            <head></head>
            <header>
                <% include ../views/header %>
            </header>
            <body>
            <script>
            var a="hello";
            </script>
            </body>
        </html>
//insertion.ejs//
var a=“你好”;
这一页呢

 // get.ejs //



        <!DOCTYPE html>
            <html lang=”en”>
            <head></head>
            <header>
                <% include ../views/header %>
            </header>
            <body>
            <script>
            var b 
            </script>
            </body>
         </html>
//get.ejs//
变量b

那么如何将变量a的内容传递给变量b呢?您可以使用LocalStorage概念。 下面是如何使用本地存储的说明。

如果您想在用户单击链接并从一个页面转到另一个页面时传递该值,则可以使用查询参数并创建如下链接:

<a href="page2?name=value">link</a>

其中,
name
是查询参数的名称,
value
是其值,可由EJS模板使用适当的数据填充

现在,您可以在路由处理程序中获取该参数,并将其与其他变量一起传递给模板,也可以通过页面上的客户端JavaScript访问该参数

如果您希望在某种意义上传递变量,即希望该变量可供用户使用,那么您需要使用一些会话存储、cookie或本地存储

如果您希望将变量从一个页面传递到其他所有用户以减少重复,则应使用
include
将其包含在所有需要它的页面中,或通过处理程序传递


从您的问题来看,您的意图并不十分明确,但这或多或少是您在所有情况下都可以做的。

您可以在一个页面中建模绑定,但不能在两个单独的页面中建模绑定。为此,您已经制定了自己的方法,您有两种新颖的方法来实现这一点,首先使用socket.io,通过这种方法,让每个页面发布和订阅事件,每当一个页面发出事件,另一个页面就会自动接收,反之亦然。另一种方法是利用节点本地存储和缓存系统模块。对于本地存储,您可以使用memcache,节点缓存只需执行npm搜索。对于快速和直接的缓存,请使用redis,redis在内存中存储数据结构,用作数据库、缓存和消息代理。它支持数据结构,如字符串、哈希、列表、集合、带范围查询的排序集合

快乐编码:):

  • 首先,创建一个HTML标记,在其中传递一个值 例如:
  • startingContent:
    是您在需要数据的页面中标识的密钥

    HomeStart内容:
    是要显示其值的变量


    快乐编码

    只要确保使用任何一种方法,您都应该有某种清理逻辑,以便在事务完成后释放空间。
         <p> <%= startingContent %>  </p> 
    
      app.get("/", function(req, res) {
      res.render("home", {startingContent: homeStartingContent});