代码非常短,代码片段已经提供。
js
const app = getApp()Page({ data: { datedisplay:"", }, onLoad: function () { let d = new Date() this.setData({date:d}) this.setData({datedisplay:d.toLocaleString()}) },}) |
wxml
<wxs module="util"> function toLocal(time) { d = getDate(time) if (d == "Invalid Date") return "" return d.toLocaleString() } module.exports.toLocal = toLocal</wxs><view class="intro"><text>JS toLocaleString:{{datedisplay}}</text></view><view class="intro"><text>WXS toLocaleString:{{util.toLocal(date)}}</text></view> |
做的事情也非常简单,对比js部分的Date.toLocaleString() 和wxs部分Date.toLocaleString()
安卓下截图:
iOS截图
BUG显而易见。很显然在安卓里,js框架内的Date对象toLocaleString()被简单地作为toString()处理了,其他toLocaleTimeString(), toLocaleDateString()都存在问题。这个问题非常久了,希望赶紧处理。这都是小程序框架基础函数级别的服务,有这种问题那么久没发现也是一个奇迹。

2020/3/5 下午10:59
date.toLocaleString()的bug依然没有修复,刚学js,查了两天的资料才发现是个bug!!!
只能使用 date.toLocaleDateString() + " " + date.toLocaleTimeString() 代替!
坑啊!!!
2020年了。。。我还遇到这个坑呜呜呜呜呜呜呜
还没有解决
这个问题解决了吗?
同样遇到这个问题,官方还不给解释???
同样遇到这个问题,很烦!
这个问题官方一直没有解决,要靠开发者自己处理字符串吗?
没人在意?