以下代码不断反复检索相同的Flash消息,我使用setInterval
每秒拨打get_flash()
一次。烧瓶闪存文档说:
调用
get_flashed_messages
后,将从队列中删除邮件。
这里不是这样。我排队了几条消息,它们都被反复检索(不是重复早期的问题 - 我花了几个小时搜索)。
InsertAdjacentHTML的工作方式与消息全部附加在文本框的末尾相同。
<script type="text/javascript">
function get_flash(){
{% with messages = get_flashed_messages() %}
{% if messages %}
var strng = "";
const div = document.getElementById('msg_box');
{% for message in messages %}
strng = "{{message}}" + "\r";
div.insertAdjacentHTML('beforeEnd', strng);
{% endfor %}
{% endif %}
{% endwith %}
}
</script>
<script type="text/javascript">
setInterval("get_flash()", 1000);
</script>