babel-polyfill과 @babel/polyfill의 차이는 무엇입니까?비망록

2269 단어 JavaScript

배경.


버그싱オブジェクトは 'finally' プロパティまたはメソッドをサポートしていません에서 오류가 토출돼 조사를 진행했다.이는 new Promise.finally() IE가 호환되지 않기 때문으로 보인다.MDN - Promise.prototype.finally()
그래서 패키지.제이슨을 확인했습니다. 아래와 같습니다.
  • 바벨 폴리필 넣었잖아
  • 마지막 업데이트는 3년 전 화석 프로젝트인가요?w
  • 평소 잘 다루지 않는 프로젝트라 가끔 와서 만져보면 이런 것들이 발견된다.
    그렇다면 여기서 의문이 하나 생겼다.babel-polyfill@babel/polyfill의 차이는 무엇입니까?

    조사해 보았다

    babel-polyfill이렇게 되면 결과@babel/polyfill가 비교적 핫하다.
    같은 물건인가요?그러고 보니 yarn upgrade babel-polyfill --latest 해 봤는데 업데이트가 안 됐어요.(*사후에 생각해도 그렇고 토하고 싶지만 무시하세요)
    확인버전 목록

    똑같은가 보네.그러니까 대갱신 때 뭐가 바뀌었나?
    그래서 나는 문장을 읽었다Babel 7 Released.그리고 아래로 스크롤...
    네.이것 괜찮아요?
    Major Breaking Change
    Move us to the @babel namespace by switching to using "scoped"packages (details). This helps differentiate official packages, so babel-core becomes @babel/core (and no squatting)
    그렇군요. 버전이 7.0.0이 되었을 때 이름 공간이 바뀐 것 같습니다.이 영향으로 --latest만 더하면 봉인을 @babel/polyfill로 간단하게 전환하지 못한다.

    결론

  • 같은 봉인이지만 버전 7.0.0을 계기로 명칭 공간이 달라졌다
  • 가방을 다시 yarn add -D @babel/polyfill업데이트한 후yarn remove babel-polyfill가 되었다.
  • * 하지만 Babel 7.4.0에서 @babel/polyfill까지는 추천하지 않습니다. 양해 바랍니다.
    => Babel7.4에서 추천하지 않는 babel/polyfill의 대체 방법과 설정 방법

    좋은 웹페이지 즐겨찾기