如何在 Jinja2 中使用 JavaScript 变量,例如访问列表条目?

How to use JavaScript variables in Jinja2, e.g. for accessing a list entry?

是否有可能使用 Jinja2 实现如下内容?

在我的 <script>:

    function get_word() {
        let entry_number = 0;
        let g = "{{ words[" + entry_number + "] }}"; 
}

我有一个单词列表。我想访问该列表的第 entry_number 个键。 entry_number是一个js变量。我尝试实现这一目标的方式不起作用 jinja2.exceptions.UndefinedError: list object has no element entry_number。所以它不使用 entry_number 的值,而是查找显然不存在的条目 entry_number

Jinja 将在服务器上呈现。 js会在客户端执行。
这个 "{{ words[" + entry_number + "] }}"; 不是神社变量。所以 Jinja 不会解析它。

但是您可以将单词列表(作为 jinja 变量)传递给客户端并在您的 js 代码中使用它。

示例内联脚本:

<script>
  const words = {{ words | tojson }};
  ...
  function get_word() {
    let entry_number = 0;
    let g = words[entry_number];
    ...
  }
  ... 
</script>