[javascript] material-ui datepicker를 작동시킬 수 없습니다

어떤 이유로 material-ui datepicker가 작동 하지 않습니다 . 날짜 선택기가 React에서 렌더링 될 때마다 다음 오류가 발생합니다.

RangeError : 형식 문자열에 이스케이프되지 않은 라틴 알파벳 문자가 포함되어 있습니다. n

datepicker ( https://stackblitz.com/edit/react-6ma6xd?embed=1&file=index.js ) 로 stackblitz를 만들었 으며 오류가 표시됩니다. 내가 무엇을 잘못하고 있지? 설치 안내서의 모든 지침을 따랐습니다.

material-ui / pickers로 연결하십시오 : https://material-ui-pickers.dev/



답변

나는 같은 문제가 있었고 github 문제에서 이것을 발견했다.

https://github.com/mui-org/material-ui-pickers/issues/1440
“@ date-io / date-fns”: “^ 1.3.13″을 설치하여 작동 시켰습니다.


답변

패키지를 다운 그레이드 @date-io@^1.3.13

npm i @date-io/date-fns@1.3.13


답변

material-ui-pickers 예제는 다음과 같은 종속성 버전을 사용하는 것 같습니다.

"@date-io/date-fns": "1.0.1",
"material-ui-pickers": "2.1.1",

귀하의 예에서 더 이상 사용되지 않는 material-ui-pickers 버전의 @ date-io 최신 버전을 사용하고 있습니다.

"@date-io/date-fns": "2.0.1",
"@material-ui/pickers": "3.2.8",

(1) 예제와 일치하도록 버전을 설정하거나 (2) 최신 material-ui-pickers 버전을 사용하고 DateFnsUtils 대신 사용자 정의 함수를 사용하여 날짜 형식을 수행 할 수 있습니다.

도움이 되었기를 바랍니다.


답변

당신은 설치해야

npm i @ date-io / date-fns @ 1.x 날짜 -fn

공식 사이트에서.
https://material-ui-pickers.dev/getting-started/installation
을 따르고 지침을 따르십시오.


답변

위의 답변은 시도하지 않았지만 솔루션에 대한 단서를 제공했습니다. 이전 답변이 효과가 없으면 전체 다운 그레이드해야합니다.

npm install @material-ui/pickers@3.2.8
npm install @date-io/date-fns@1.3.13
npm install date-fns@2.8.1


답변

그냥 momentJS를 사용하십시오 : npm i @ date-io / moment @ 1.x moment

import MomentUtils from '@date-io/moment';

function App() {
  return (
    <MuiPickersUtilsProvider utils={MomentUtils}>


답변

ui pickers v3 @ date-io와의 충돌로 인해 공식 사이트를 방문 할 수 있습니다.

중요 사항 : material-ui-pickers v3의 경우 v1.x 버전의 @ date-io 어댑터를 사용하십시오.