我正在尝试测试为在聊天中显示时间戳而构建的实用程序功能。我希望每个国家都可以访问它,并根据navigator.language动态呈现。
我在移动设备上测试时遇到问题。在台式机上,我可以在Chrome的高级设置中编辑默认语言。您知道在移动设备上从哪里提取数据吗?如果可以,我可以在哪里进行更改。
export function getLocaleTimestamp (showSeconds) {
const locale = navigator.language || navigator.userLanguage;
const date = new Date();
let localeFormat = null;
const options = {
hour: 'numeric',
minute: 'numeric',
...(showSeconds && { second: 'numeric' })
};
localeFormat = new Intl.DateTimeFormat(locale,
options
).format;
const formatedDate = localeFormat(date);
return formatedDate;
}
答案 0 :(得分:1)
前段时间,我在测试为美国客户所做的更改时遇到了同样的问题。由于Chrome使用的是来自操作系统的时区,因此,我必须更改系统日期时间,并且还连接到USA VPN。因此,我假设它也需要IP连接/或网络时间轴。 同样值得尝试在Chrome开发者工具中使用https://developers.google.com/web/tools/chrome-devtools/remote-debugging/,新的Date()。toLocaleString('en-US',{timeZone:'Asia / Jakarta'})//首选时区
让我知道是否有其他适合您的方法。 :) 有用的链接stackoverflow.com/a/16449343/1225070和stackoverflow.com/a/18612568/1225070