收藏
回答

请问一下为什么时间选择器变成十二小时制的了?

在开发者工具里,或者以前手机里都是可以24小时制的,最近发现手机上变成12小时制了,是增加了参数吗?但是文档里面没看到呀

回答关注问题邀请回答
收藏

8 个回答

  • 大海上的风
    大海上的风
    发表于移动端
    2021-09-29
    12,比较简单
    2021-09-29
    有用
    回复
  • 失眠的男青年
    失眠的男青年
    2020-11-02

    官方,赶紧修复。12小时制,会有歧义。上午12:00选择之后是00:00,要选择下午12:00 才正确的。

    2020-11-02
    有用
    回复
  • 晓虎.
    晓虎.
    2020-10-29

    iphone11pro 微信版本为7.0.17 手机已经设置为24小时制,时间控件依旧是12小时制.

    2020-10-29
    有用
    回复
  • 行云
    行云
    2020-10-12

    解决了,自己用picker重新实现了一个timepicker组件。

    time-picker.js

    Component({
        externalClasses: ['tp-class'],
        behaviors: ['wx://form-field'],
        properties: {
            pickerClass: String,
            multiIndex: {
                type: Array,
                value: [new Date().getHours(), new Date().getMinutes()]
            },
            value:{
                type: String
            }
        },
        data: {
            multiArray: [[0],[0]],
        },
        attached() {
            this.dataInit();
        },
        observers: {
            'value': function(value) {
                // 在value被设置时,执行这个函数
                this.updateShowValue(value)
            }
        },
        methods: {
            updateShowValue: function(value) {
                if(value){
                    let timeArr = value.split(":");
                    this.setData({
                        multiIndex: [parseInt(timeArr[0]),parseInt(timeArr[1])]
                    });
                }
            },
            dataInit: function() {
                let hourMinuteArray = [[],[]];
                for(let i = 0;i < 24; i++) {
                    hourMinuteArray[0][i] = i + "时";
                }
                for(let i = 0;i < 60; i++) {
                    hourMinuteArray[1][i] = i + "分";
                }
                this.setData({
                    multiArray: hourMinuteArray
                })
            },
            //我是picker的事件
            _change(e) {
                //为组件提供函数,函数名为change,并且函数还提供参数value
                let value = this.getValue(e.detail.value);
                this.triggerEvent('change', {
                    value: value
                });
                //为表单提供value
                this.setData({
                    value: value,
                    multiIndex: e.detail.value
                })
            },
            getValue: function(rangeArr){
                return this.fillZero(rangeArr[0])+":"+this.fillZero(rangeArr[1])
            },
            fillZero : function(value){
                if((value+"").length === 1){
                    return  "0" + value;
                }
                return value;
            }
        }
    });
    
    
    


    time-picker.wxml

    <wxs module="func">
    var func = {
        fillZero : function(value){
            if((value+"").length === 1){
                return  "0" + value;
            }
            return value;
        }
    };
    // 导出对外暴露的属性
    module.exports = {
        fillZero: func.fillZero
    }
    </wxs>
    <picker mode="multiSelector"  value="{{multiIndex}}" bindchange="_change" range="{{multiArray}}">
        <view class="tp-class">
            时间 {{func.fillZero(multiIndex[0])}} : {{func.fillZero(multiIndex[1])}}
        </view>
    </picker>
    
    2020-10-12
    有用
    回复
  • jeese-liu
    jeese-liu
    2020-09-05

    我也出现这种情况,iPhone X 13.7系统 ,微信版本7.0.15 。 24小时制现在显示12小时制,手机时间是24小时制的

    2020-09-05
    有用
    回复
  • 心向阳ゝ无谓伤
    心向阳ゝ无谓伤
    2020-08-04

    我这里也是同样的问题,还是之前的代码,最近变成了12小时制了,系统时间格式为24小时制

    <picker mode="time" :value="form.beginCommitTime" start="00:00" end="23:59" @change="bindTimeBChange">
      <view class="uni-input">{{form.beginCommitTime}}view>
    picker>
    
    2020-08-04
    有用
    回复 2
    • 灵芝
      灵芝
      2020-08-10
      具体是什么机型?我这边是正常的
      2020-08-10
      回复
    • 心向阳ゝ无谓伤
      心向阳ゝ无谓伤
      2020-08-13回复灵芝
      iphone 8 Plus 软件版本13.5.1  微信版本是7.0.15
      2020-08-13
      回复
  • 灵芝
    灵芝
    2020-08-02

    你好,手机系统时间是设置为12小时制了吗?

    2020-08-02
    有用
    回复 11
    • 心向阳ゝ无谓伤
      心向阳ゝ无谓伤
      2020-08-04
      我也是同样对问题,ios上出现的,手机没有设置成12小时制
      2020-08-04
      回复
    • 行云
      行云
      2020-08-10
      同问,手机没有设置12小时,微信ios客户端升级到版本:7.0.14 就出现了,安卓的是正常的。
      2020-08-10
      回复
    • 灵芝
      灵芝
      2020-08-10回复行云
      具体是什么机型?我这边是正常的
      2020-08-10
      回复
    • 小小子
      小小子
      2020-08-11
      iphone 8 软件版本13.6  微信版本是7.0.14
      2020-08-11
      回复
    • 小小子
      小小子
      2020-08-11回复灵芝
      这边也出现了这个问题哦
      2020-08-11
      回复
    查看更多(6)
  • 游戏人生
    游戏人生
    2020-08-02

    有代码?文档里默认是24小时的


    <view class="section">
      <view class="section__title">时间选择器</view>
      <picker mode="time" value="{{time}}" start="09:01" end="21:01" bindchange="bindTimeChange">
        <view class="picker">
          当前选择: {{time}}
        </view>
      </picker>
    </view>
    
    2020-08-02
    有用
    回复
登录 后发表内容
问题标签