moment.tz.guess 没有显示正确的值

时间:2021-03-13 12:31:42

标签: javascript html

我需要在 Webflow 应用程序中保存时区,并且我编写了以下简单的 HTML:

<head>
</head>
<body>
<script src="http://momentjs.com/downloads/moment.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.33/moment-timezone.min.js"></script>

<div id="output"></div>

<script type="text/javascript">

var m = moment.tz.guess();
//var s = m.format();

document.getElementById("output").innerHTML = m;

</script>
</body>
</html>

它在浏览器中显示“未定义”,我在控制台中收到这条奇怪的错误消息:

'Moment Timezone 从 Intl api 找到了 Europe/London,但没有加载该数据。'

这是正确的时区,所以有没有办法让它打印我正确的时区,而不仅仅是未定义。我使用的是 Chrome 89.0.4389.82。

1 个答案:

答案 0 :(得分:0)

<head>
</head>
<body>
<script src="http://momentjs.com/downloads/moment.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.33/moment-timezone.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.33/moment-timezone-utils.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.33/moment-timezone-with-data-10-year-range.js"></script>

<div id="output"></div>

<script type="text/javascript">
console.log(moment.tz);
var m = moment.tz.guess(true);
document.getElementById("output").innerHTML = m;

</script>
</body>
</html>

这有效。

相关问题