以下基本设置与python3.4,jinja2,flask_moment(0.5.1),Flask(0.10.1)集成。 我正在尝试简单理解工作的能力。 的例子是荒谬的,但我想浏览器显示:flask_moment当前时间刷新浏览器不更新
- 首先,实时的实际时间(“当地的时间是......”),实时不断更新
- 其次,时间已过(“那是......”)。
Jinja2的代码:
<p>The local time is {{ moment(current_time).format('LT', refresh=True) }}.</p>
<p>That was {{ moment(current_time).fromNow(refresh=True) }}</p>
第二线刷新工作正常,在浏览器(“那是1/2/3分钟前”),表示正常工作的所有库,但第一行刷新不起作用。
方法moment(current_time).format('LT',refresh = True)我认为将刷新选项设置为“True”时会实时显示时间,但事实并非如此。
看着浏览器标记,所有的库都在那里,没有错误。请参阅下面的标记。 任何提示赞赏或者我误解的能力?
浏览器源:
<div class="container">
<div class="page-header">
<h1>Hello, Flask!</h1>
</div>
</div>
<p>The local time is <span class="flask-moment" data-timestamp="2016-01-28T12:19:20Z" data-format="format('LT')" data-refresh="60000" style="display: none">2016-01-28T12:19:20Z</span>.</p>
<p>That was <span class="flask-moment" data-timestamp="2016-01-28T12:19:20Z" data-format="fromNow(0)" data-refresh="60000" style="display: none">2016-01-28T12:19:20Z</span></p>
<script src="/static/bootstrap/jquery.min.js?bootstrap=3.3.5.7"></script>
<script src="/static/bootstrap js/bootstrap.min.js?bootstrap=3.3.5.7"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.3/moment-with-locales.min.js"></script>
<script>
moment.locale("en");
function flask_moment_render(elem) {
$(elem).text(eval('moment("' + $(elem).data('timestamp') + '").' + $(elem).data('format') + ';'));
$(elem).removeClass('flask-moment').show();
}
function flask_moment_render_all() {
$('.flask-moment').each(function() {
flask_moment_render(this);
if ($(this).data('refresh')) {
(function(elem, interval) { setInterval(function() { flask_moment_render(elem) }, interval); })(this, $(this).data('refresh'));
}
})
}
$(document).ready(function() {
flask_moment_render_all();
});
克里斯 - 是的,我已经给了它时间的黑桃。 jinja脚本中两行的刷新时间是相同的,第二个更新如预期,但不是第一个。谢谢。 – Seamus