是否可以使用Javascript变量作为Flask模板中Python列表的索引?

是否可以使用Javascript变量作为Flask模板中Python列表的索引?,javascript,python,flask,jinja2,Javascript,Python,Flask,Jinja2,最后一行是picu列表,它是python列表。是否可以在Flask Jinja2模板中使用javascript变量为Python列表编制索引 function moveright(cur_pos, list_length) { if (current_position !== -9999) { current_position = cur_pos; } if (current_position < list_length - 1) { current_posit

最后一行是picu列表,它是python列表。是否可以在Flask Jinja2模板中使用javascript变量为Python列表编制索引

function moveright(cur_pos, list_length) {
  if (current_position !== -9999) {
    current_position = cur_pos;
  }
  if (current_position < list_length - 1) {
    current_position = current_position + 1;
  } else {
    current_position = 0;
  }
  document.getElementById('image').src = {
    {
      pic_list[current_position]
    }
  };
}

我不确定我是否理解这个问题。为什么不尝试通过将集合转换为JSON字符串来将Python列表传递给JavaScript呢

1.使用json.dumps方法将列表转换为json字符串

@app.route('/test')
def custom_view():
    pic_list = ['banana', 'orange', 'apple']
    return render_template('index.html', data=json.dumps(pic_list))
2.将JSON字符串传递给模板

<script>
    console.log({{ data|safe }});
</script>

如果集合包含.

javascript将在与python不同的环境中长期运行,则应避免此过程。一种解决方案可能是使用pic_list的内容在模板中定义一个javascript数组文本,并在js函数中引用than。