Angular bootstrap 日期选择器如何显示 "MM/dd/yyyy" 和 "MM/dd/yy"?

How can Angular bootstrap datepicker display "MM/dd/yyyy" and "MM/dd/yy"?

我在使用 Angular bootstrap 日期选择器时遇到格式问题。 我希望它显示与我键入时相同的值。 例如:

目前我输入“01/01/21”或“01/01/2021”时,唯一的结果显示为01/01/2021。

这是我的源代码:

function directive() {
        return {
            template: '<section class="app-input" ng-show="show">' +
                '<div class="row">' +
                '<div class="small-12 columns">' +
                '<div class="label-wrapper " ng-show="label">' +
                '<label >{{label}} <span class="hint">{{hint}}</span>' +
                '<span class="pull-right" ng-show="isRequired()"> (*) </span>' +
                '</label>' +
                '</div>' +
                '<div class="input-wrapper ">' +
                '<p ng-mouseenter="hideTooltip()" class="input-group">' +
                '<input ng-blur="checkDate()" type="text" class="form-control" uib-datepicker-popup="MM/dd/yyyy" ng-model="ngModel"' +
                'is-open="popup2.opened" placeholder="mm/dd/yy" data-ng-change="onChange()" datepicker-options="dateOptions"' +
                'ng-required="isRequired()" close-text="Close"/>' +
                '<span class="input-group-btn">' +
                '<button type="button" class="btn btn-default" ng-click="open2()">' +
                '<i class="glyphicon glyphicon-calendar"></i>' +
                '</button>' +
                '</span>' +
                '<a ng-show="showToolTip" style="color:red" uib-tooltip=" Warnning!"> The date your entered not correct ! </a>' +
                '</p>' +
                '</div>' +
                '</div>' +
                '</div>' +
                '</section>',
            restrict: 'EAC',
            require: '?ngModel',
            transclude: true,
            replace: true,
            link: postLink,
            scope: {
                label: "=",
                ngModel: "=",
                type: "=",
                placeholder: "=",
                hint: "=",
                bottomhint: "=",
                readonly: "=",
                name: "=",
                setDefault: "=",
                changeEvent: "<",
                disabled: "="
            },
        };

谢谢。

uib-datepicker 接收格式作为日期处理到 uib-datepicker-popup 属性中。

在这种情况下,您可以将其插入一个变量,如

uib-datepicker-popup="{{vm.dateFormat}}"

检查您的组件的来源以获取也是固定字符串的 placeholder 属性。如果你想将占位符从父组件发送到你的指令,它应该引用一个控制器变量。

您可以查看下面的格式语法

Link参考: http://angular-ui.github.io/bootstrap/#!#datepicker