programing

날짜 형식을 angularjs로 지정하는 방법

easyjava 2023. 4. 4. 23:22
반응형

날짜 형식을 angularjs로 지정하는 방법

날짜 형식을 지정합니다.mm/dd/yyyy다음을 시도했지만 아무 것도 통하지 않습니다.누가 나 좀 도와줄래?

참조: ui-date

<input ui-date ui-date-format="mm/dd/yyyy" ng-model="valueofdate" /> 

<input type="date" ng-model="valueofdate" />

Angular.js에는 날짜 필터가 내장되어 있습니다.

데모

// in your controller:
$scope.date = '20140313T00:00:00';

// in your view, date property, filtered with date filter and format 'MM/dd/yyyy'
<p ng-bind="date | date:'MM/dd/yyyy'"></p>

// produces
03/13/2014

날짜 필터의 원본에서 지원되는 날짜 형식을 볼 수 있습니다.

편집:

날짜 선택기에서 올바른 포맷을 얻으려고 하는 경우(날짜 선택기를 사용하는지 포메터를 사용하려고 하는지는 명확하지 않습니다), 지원되는 포맷 문자열은 다음과 같습니다.https://api.jqueryui.com/datepicker/

입력 필드가 없는 경우 올바른 서식을 사용하여 문자열 날짜를 표시하는 경우 다음 작업을 수행할 수 있습니다.

<label ng-bind="formatDate(date) |  date:'MM/dd/yyyy'"></label>

js 파일에서는 다음을 사용합니다.

    // @Function
    // Description  : Triggered while displaying expiry date
    $scope.formatDate = function(date){
          var dateOut = new Date(date);
          return dateOut;
    };

그러면 문자열의 날짜가 Javascript의 새 날짜 개체로 변환되고 날짜가 MM/dd/yyy 형식으로 표시됩니다.

출력: 2014년 12월 15일

편집
2014-12-19 20:00:00 형식의 문자열 날짜를 사용하는 경우(PHP 백엔드에서 전달됨) 코드를 https://stackoverflow.com/a/27616348/1904479의 형식으로 수정해야 합니다.

추가
javascript에서 코드를 다음과 같이 설정할 수 있습니다.

$scope.eqpCustFields[i].Value = $filter('date')(new Date(dateValue),'yyyy-MM-dd');

즉, 이미 날짜가 있는 경우 다음 코드를 사용하여 현재 시스템 날짜를 가져올 수 있습니다.

$scope.eqpCustFields[i].Value = $filter('date')(new Date(),'yyyy-MM-dd');

날짜 형식에 대한 자세한 내용은http://https://docs.angularjs.org/api/ng/filter/date 를 참조해 주세요.

저는 이것을 사용하고 있고, 정상적으로 동작하고 있습니다.

{{1288323623006 | date:'medium'}}: Oct 29, 2010 9:10:23 AM
{{1288323623006 | date:'yyyy-MM-dd HH:mm:ss Z'}}: 2010-10-29 09:10:23 +0530
{{1288323623006 | date:'MM/dd/yyyy @ h:mma'}}: 10/29/2010 @ 9:10AM
{{1288323623006 | date:"MM/dd/yyyy 'at' h:mma"}}: 10/29/2010 at 9:10AM

이것은 실제로 당신이 원하는 것은 아니지만 다음과 같은 날짜 입력 필드를 html로 만들어 볼 수 있습니다.

<input type="date" ng-model="myDate" />

다음으로 사용하는 페이지에 인쇄합니다.

<span ng-bind="convertToDate(myDate) | date:'medium'"></span>

마지막으로 컨트롤러에서 입력값에서 날짜를 생성하는 메서드를 선언했습니다(크롬으로 해석하면 1일 휴무).

$scope.convertToDate = function (stringDate){
  var dateOut = new Date(stringDate);
  dateOut.setDate(dateOut.getDate() + 1);
  return dateOut;
};

자, 여기 있네요.동작하는 모든 것을 확인하려면 , http://plnkr.co/edit/8MVoXNaIDW59kQnfpaWW?p=preview 를 참조해 주세요.행운을 빌어요!

이 조작은 유효합니다.

{{ oD.OrderDate.replace('/Date(','').replace(')/','') | date:"MM/dd/yyyy" }}

메모: 교환 후 남은 날짜/밀리는 지정된 포람으로 변환됩니다.

필터를 사용합니다.

.filter('toDate', function() {
  return function(items) {
    return new Date(items);
  };
});

그리고나서

{{'2018-05-06 09:04:13' | toDate | date:'dd/MM/yyyy hh:mm'}}

비스듬히 보다dateapi : 각도JS API: 날짜


The Angular - date filter:

사용방법:

{{ date_expression | date  [: 'format']  [: 'timezone' ] }}


시험:

코드:

 <span>{{ '1288323623006' | date:'MM/dd/yyyy' }}</span>

결과:

10/29/2010

UTC 날짜 형식을 서버 측 코드에서 클라이언트 측으로 전달하기만 하면 됩니다.

다음 구문을 사용합니다.

 {{dateUTCField  +'Z' | date : 'mm/dd/yyyy'}}

 e.g. dateUTCField = '2018-01-09T10:02:32.273' then it display like 01/09/2018

위의 모든 해결책을 살펴본 결과, 다음과 같은 것이 가장 빠른 해결책이었습니다.각도 재료를 사용하는 경우:

 <md-datepicker ng-model="member.reg_date" md-placeholder="Enter date"></md-datepicker>

형식을 설정하려면:

app.config(function($mdDateLocaleProvider) {
    $mdDateLocaleProvider.formatDate = function(date) {
        // Requires Moment.js OR enter your own formatting code here....
        return moment(date).format('DD-MM-YYYY');
    };
});

편집: 날짜를 입력할 parseDate도 설정해야 합니다(이 답변에서 Angular Material의 md-datepicker 형식 변경).

$mdDateLocaleProvider.parseDate = function(dateString) {
    var m = moment(dateString, 'DD/MM/YYYY', true);
    return m.isValid() ? m.toDate() : new Date(NaN);
};
var app=angular.module('myApp',[]);
        app.controller('myController',function($scope){         
              $scope.names = ['1288323623006','1388323623006'];

        });

컨트롤러 이름은 "myController"이고 앱 이름은 "myApp"입니다.

<div ng-app="myApp" ng-controller="myController">
        <ul>
            <li ng-repeat="x in names">
                {{x | date:'mm-dd-yyyy'}}

            </li>

        </ul>
    </div>

결과는 다음과 같습니다.- * 2010년 10월 29일 * 2013년 01월 03일

{{convertToDate  | date :  dateformat}}                                             
$rootScope.dateFormat = 'MM/dd/yyyy';

다음 행에서 발생한 것으로 보이는 문제를 확인합니다.
https://github.com/angular-ui/ui-date/blob/master/src/date.js#L106 를 참조해 주세요.

실제로 이 행은 jQuery UI와의 바인딩으로, 데이터 형식을 삽입하는 장소가 되어야 합니다.

에서 알 수 있듯이var optsdateFormatng-date-format의 값으로 합니다.

에는 '상수'라는 .uiDateConfigopts.

유연한 솔루션(권장):

여기서 jquery ui 옵션과 함께 컨트롤러 변수를 디렉티브에 삽입하는 옵션을 삽입할 수 있습니다.

<input ui-date="dateOptions" ui-date-format="mm/dd/yyyy" ng-model="valueofdate" />

myAppModule.controller('MyController', function($scope) {
    $scope.dateOptions = {
        dateFormat: "dd-M-yy"
    };
});

하드코드화된 솔루션:

이 값을 해 주세요.uiDateConfigdate.date.date.date.date.date.date.date:

.constant('uiDateConfig', { dateFormat: "dd-M-yy" })

저도 같은 문제가 있어서 위의 코멘트와 마찬가지로 JavaScript에 네이티브 메서드가 있을 것이라고 생각했습니다.는 ★★★★★★★★★★★★★★★★★★.new Date(valueofdate)다테야

단, http://www.w3schools.com/js/js_date_formats.asp,에서 선두 0으로 표시된 부분을 확인하십시오.문자열의 날짜(예: PHP의 에코)는 다음과 같아야 합니다.

$valueofdate = date('Y-n-j',strtotime('theStringFromQuery'));

스트링하다'1999-3-3'는 "JavaScript"를 사용하여 올바른 에 대한 합니다.

$scope.valueofdate = new Date(valueofdate);

<input ui-date ui-date-format="mm/dd/yyyy" ng-model="valueofdate" />
<input type="date" ng-model="valueofdate" />

날짜 형식은 PHP 링크: http://www.w3schools.com/php/func_date_date_format.asp

ng-bind="reviewData.dateValue.replace('/Date(','').replace(')/','') | date:'MM/dd/yyyy'"

이 방법을 사용하면 정상적으로 동작합니다. :) 파라미터의 나머지에 따라 reviewData 및 dateValue 필드를 변경할 수 있습니다.

// $scope.dateField="value" in ctrl
<div ng-bind="dateField | date:'MM/dd/yyyy'"></div>

언급URL : https://stackoverflow.com/questions/22392328/how-to-format-date-in-angularjs

반응형