【问题标题】:EJS share data between 2 pagesEJS 在 2 个页面之间共享数据
【发布时间】:2019-07-01 17:24:55
【问题描述】:

如果可能的话,请告诉我如何使用 EJS 在 2 个页面之间共享数据。

我在 page1 上获得了带有一些数据的 json,我需要在 page2 上共享它。

现在我在数据库中使用另一个查询(通过链接访问数据),但我想减少网络流量。 我在这里得到数据:

router.get('/page1', function(req, res) {
   res.render('page1',{'result' : result} );
}

我想单击第 1 页上的某个按钮并使用来自 result[someIndex] 的数据打开第 2 页

 router.get('/page2', function(req, res) {
       res.render('page2');
 }

【问题讨论】:

  • result是什么数据?它的值会在 page1 和 2 之间变化吗?
  • 结果是 json。页面之间的数据不会改变(仍然相同)。

标签: javascript node.js ejs


【解决方案1】:

1 - 您可以使用本地存储

2 - 你可以通过链接传递数据

router.get('/page1', function(req, res) {
   res.render('page1',{'result' : result} );
}

在第 1 页模板中,

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

然后像第2页一样访问它

app.get('/page2', function(req, res, next) {
   res.render('page2', {query : req.query.name});
});

3 - 将数据从根目录传递到两个页面

app.get('/page1.js', function(req, res) {
  res.render('testPage', { myVar : ... });
});

app.get('/page2.js', function(req, res) {
  res.render('testPage', { myVar : ... });
});

【讨论】:

  • 我已经编辑了我的答案。请分享代码,以便我更好地理解问题。
  • 我正在使用您的回答中的 2 个解决方案,其他解决方案对我不起作用,这就是我在这里的原因
  • 再次,第二点有效,谢谢。但我需要另一种方式,展示如何使用 1 和 3 点
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-20
  • 2018-12-01
  • 1970-01-01
  • 2017-10-01
  • 1970-01-01
相关资源
最近更新 更多