如何在for循环中一起使用innerHTML和ejs?

春节

我想使用innerHTML. 如果我不必使用innerHTML,我可以轻松地执行以下操作。

<div>
  <% for (var i = 0; i < messages.length; i++) { %>
    <p><%= messages[i] %></p>
  <% } %>
</div>

我必须innerHTML为此目的使用的原因是我的 React.js 代码被 webpack 最小化,所以我不能把 ejs 代码放在我想要的 React 代码中。为了解决这个问题,我需要放入idReact 代码,以便我可以将消息放在我想要的地方。所以我尝试了以下方法。

反应代码:

<div id="messagesGoHere"></div>

index.ejs 代码:

<script>
  <% for (var i = 0; i < messages.length; i++) { %>
    document.getElementById("messagesGoHere").innerHTML += "<p><%= messages[i] %></p>";
  <% } %>
</script>

这返回错误说

未捕获的语法错误:无效或意外的令牌

我使用 node.js、express 和 redis 来存储消息。

我很感激任何建议。

更新:

以下是我渲染messages对象的方式。

app.get('/', function (req, res) {
  // Get messages
  client.lrange('chat:messages', 0, -1, function (err, messages) {
    if (err) {
      console.log(err);
    } else {
      // Get messages
      var message_list = [];
      messages.forEach(function (message, i) {
        message_list.push(message);
      });
      // Render page
      res.render('index', { messages: message_list });
    }
  });
});

注意事项:

  • 我在问题中提供的第一个不依赖的代码片段innerHTML完全可以正常工作,这证明我的服务器端代码是正确的。
  • 至于<script>标签中的ejs代码,如果我不使用i变量而是0像这样使用"<p><%= messages[0] %></p>",它成功返回了与for循环计数一样多的第一条消息,这也证明了我的服务器端代码是有效的。
  • 问题是for 循环与 ejs 和 innerHTML 的使用。不是我的服务器端代码或任何其他代码。
春节

好吧,我在这个问题上已经完全迷失了,但终于让它起作用了。

首先,我的任何代码都没有错。

正如我最初认为的那样,以下代码片段是正确的。

<script>
  <% for (var i = 0; i < messages.length; i++) { %>
    document.getElementById("messagesGoHere").innerHTML += "<p><%= messages[i] %></p>";
  <% } %>
</script>

在我删除我的 redis 数据messages并重新创建新数据后,它起作用了

所以我相信我的 redis 数据中有一些阻碍。

我很抱歉没有理解真正的问题。

我还要感谢所有在这篇文章中帮助过我的人。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在while和foreach循环中一起使用PHP和MySQL?

来自分类Dev

如何在类和现有事件循环中将Python的websocket与asyncio一起使用

来自分类Dev

如何在jQuery .each()循环中将.slice()与返回的文本一起使用?

来自分类Dev

如何在for循环中将ggplot2 aes_string()与cut()一起使用?

来自分类Dev

在弄清楚如何在字符串报告中一起循环和使用isalpha()和isspace()时遇到麻烦

来自分类Dev

在弄清楚如何在字符串报告中一起循环和使用isalpha()和isspace()时遇到麻烦

来自分类Dev

如何在Python中一起使用applymap,lambda和dataframe来过滤/修改dataframe?

来自分类Dev

您如何在Groovy中一起使用GroupBy和Sum?

来自分类Dev

如何在SQL Server中一起使用count,case和Distinct

来自分类Dev

如何在gnuplot中一起使用“ var”和“ palette”?

来自分类Dev

如何在Verilog中一起使用inout和reg

来自分类Dev

如何在bootstrap 3 popover中一起使用“ show”和“ placement”等属性?

来自分类Dev

如何在SQL Server中一起使用PIVOT和JOIN?

来自分类Dev

如何在angularjs中一起使用angular-gridster和highcharts-ng指令

来自分类Dev

如何在SQL Server查询中一起使用LIKE和NOT LIKE

来自分类Dev

如何在Laravel中一起使用Memcached和APC?

来自分类Dev

如何在Access VBA编码中一起使用Select Case和AND功能?

来自分类Dev

如何在Python中一起使用filter,group by和agg函数

来自分类Dev

如何在Google表格中一起使用to_date和IFERROR?

来自分类Dev

如何在SQLAlchemy中一起使用JOIN和SELECT AS?

来自分类Dev

如何在Redis中一起使用复制和分片?

来自分类Dev

如何在SQL Server中一起使用相等和不相等

来自分类Dev

如何在Bash中一起使用watch和jobs命令?

来自分类Dev

如何在SQL中一起使用IN子句和AND子句

来自分类Dev

如何在Scrapy中一起使用http和https代理?

来自分类Dev

如何在Verilog中一起使用inout和reg

来自分类Dev

如何在SQL Server中一起使用count,case和Distinct

来自分类Dev

我如何在React中一起使用'update'和setState(prevState)?

来自分类Dev

如何在 Html.Beginform 中一起使用 AjaxOptions 和 htmlattributes

Related 相关文章

  1. 1

    如何在while和foreach循环中一起使用PHP和MySQL?

  2. 2

    如何在类和现有事件循环中将Python的websocket与asyncio一起使用

  3. 3

    如何在jQuery .each()循环中将.slice()与返回的文本一起使用?

  4. 4

    如何在for循环中将ggplot2 aes_string()与cut()一起使用?

  5. 5

    在弄清楚如何在字符串报告中一起循环和使用isalpha()和isspace()时遇到麻烦

  6. 6

    在弄清楚如何在字符串报告中一起循环和使用isalpha()和isspace()时遇到麻烦

  7. 7

    如何在Python中一起使用applymap,lambda和dataframe来过滤/修改dataframe?

  8. 8

    您如何在Groovy中一起使用GroupBy和Sum?

  9. 9

    如何在SQL Server中一起使用count,case和Distinct

  10. 10

    如何在gnuplot中一起使用“ var”和“ palette”?

  11. 11

    如何在Verilog中一起使用inout和reg

  12. 12

    如何在bootstrap 3 popover中一起使用“ show”和“ placement”等属性?

  13. 13

    如何在SQL Server中一起使用PIVOT和JOIN?

  14. 14

    如何在angularjs中一起使用angular-gridster和highcharts-ng指令

  15. 15

    如何在SQL Server查询中一起使用LIKE和NOT LIKE

  16. 16

    如何在Laravel中一起使用Memcached和APC?

  17. 17

    如何在Access VBA编码中一起使用Select Case和AND功能?

  18. 18

    如何在Python中一起使用filter,group by和agg函数

  19. 19

    如何在Google表格中一起使用to_date和IFERROR?

  20. 20

    如何在SQLAlchemy中一起使用JOIN和SELECT AS?

  21. 21

    如何在Redis中一起使用复制和分片?

  22. 22

    如何在SQL Server中一起使用相等和不相等

  23. 23

    如何在Bash中一起使用watch和jobs命令?

  24. 24

    如何在SQL中一起使用IN子句和AND子句

  25. 25

    如何在Scrapy中一起使用http和https代理?

  26. 26

    如何在Verilog中一起使用inout和reg

  27. 27

    如何在SQL Server中一起使用count,case和Distinct

  28. 28

    我如何在React中一起使用'update'和setState(prevState)?

  29. 29

    如何在 Html.Beginform 中一起使用 AjaxOptions 和 htmlattributes

热门标签

归档