programing

SharedArrayBuffer는 2021년 5월경 M91에서 발신원 간 분리가 필요합니다.

sourcejob 2023. 2. 12. 10:24
반응형

SharedArrayBuffer는 2021년 5월경 M91에서 발신원 간 분리가 필요합니다.

리액트 앱을 생성할 때npx create-react-app실행 시 DevTools(Crome 88 및 89)에 경고가 표시됩니다.

scheduler.development.js:298 [Decrecation] SharedArrayBuffer는 2021년 5월경 M91 현재 발신기지 간 분리가 필요합니다.상세한 것에 대하여는, https://developer.chrome.com/blog/enabling-shared-array-buffer/ 를 참조해 주세요.

환경

  current version of create-react-app: 4.0.1
  running from /Users/mahdi/.npm/_npx/25767/lib/node_modules/create-react-app
  Binaries:
    Node: 14.15.4 - ~/.nvm/versions/node/v14.15.4/bin/node
    Yarn: 1.22.4 - /usr/local/bin/yarn
    npm: 6.14.10 - ~/.nvm/versions/node/v14.15.4/bin/npm
  Browsers:
    Chrome: 88.0.4324.96
    Edge: 87.0.664.66
    Firefox: 84.0
    Safari: 14.0.2
  npmPackages:
    react: ^17.0.1 => 17.0.1
    react-dom: ^17.0.1 => 17.0.1
    react-scripts: Not Found
  npmGlobalPackages:
    create-react-app: Not Found

여기에 이미지 설명 입력

재현 순서

  1. npx create-react-app myapp
  2. cd myapp && npm start Open
  3. http://localhost: 3000(Chrome 88 또는 89), 일반 또는 Inkognito 모드
  4. DevTools 열기: 경고가 표시됩니다.

이 경고를 해결하기 위한 제안 사항이 있습니까?

의 갱신react그리고.react-dom버전17.0.1== >17.0.2이 문제를 해결할 수 있습니다.

넌 그냥 뛰기만 하면 돼npm update커맨드 프롬프트 또는 bash에서 변경 내용을 확인할 수 있기를 바랍니다.package.json파일. (yarn upgrade react --latest그리고.yarn upgrade react-dom --latest업그레이드를 계속하고 싶은 경우package.json)

업데이트 적용 후 앱에서 git 보고서를 보내드립니다.

git 보고서 이미지

경고에서 알 수 있듯이 Chrome에서는 SharedArrayBuffer를 사용하려면 버전 91을 시작하는 교차 오리진 분리가 필요합니다.내가 아는 한 경고를 해결하기 위해 할 수 있는 일은 반응 업데이트를 기다리는 것 외에 없습니다.

여기와 여기서 볼 있듯이 다른 사용자도 이 문제를 겪고 있습니다.

이 문제는 이 풀 요청에서 수정되었지만 아직 출시되지 않았습니다.

편집: 현재 react 버전 17.0.2에서 수정되었습니다.

실제로 업데이트 후react-dom제가 문제를 해결한 최신 버전으로,react그것만으로는 해결되지 않았다.

npm i react@latest react-dom@latest

또는

yarn add react@latest react-dom@latest

(기타 레거시 라이브러리로 인해) 아직 v17로 업그레이드할 준비가 되지 않은 사용자의 경우 간단한 회피책은 다음 코드를 임의의 부분에 배치하는 것입니다.index.html

    <script>
      // See https://github.com/facebook/react/issues/20829#issuecomment-802088260
      if (!crossOriginIsolated) SharedArrayBuffer = ArrayBuffer;
    </script>

이 문제는 React 버전 17.0.2에서 수정되었습니다.react-dom도 사용하는 경우 업데이트해야 합니다.npm update(또는 대응하는 명령어 또는 사용하고 있는 매니저)를 실행하면 모든 것이 갱신되므로 권장 해제 경고가 해결됩니다.

제 소포입니다.업데이트 후 json:

github 바탕화면에서 스크린샷

react 및 react-dom 버전을 17.0.2로 업데이트합니다.yarn upgrade react --latest그리고.yarn upgrade react-dom --latest

또한 @hot-loader/react-dom 또는 react-hot-loader를 사용하는 경우 를 실행해야 합니다.yarn upgrade @hot-loader/react-dom --latest그리고.yarn upgrade react-hot-loader --latest또한.

답을 얻으셨다는 건 알지만, 누군가 사용만 하신다면:npm i react@latest react-dom@latest현재 버전이 react이고 react-dom이 16.x.x이고 프로젝트가 이젝트되지 않은 경우 react 및 react-dom은 버전 17.0.2로 업데이트되지 않습니다.이 명령어는 버전 16.14.0에 react-dom 및 react-dom만 업데이트 됩니다.이 경우 먼저 react-script, react 및 react-dom 버전을 17로 이행해야 합니다.npm install react-scripts@4.0.0 react@17.0.0 react-dom@17.0.0자세한 내용은 https://dev.to/keonik/upgrading-to-react-17-create-react-app-edition-fe 를 참조해 주세요.

언급URL : https://stackoverflow.com/questions/66489286/sharedarraybuffer-will-require-cross-origin-isolation-as-of-m91-around-may-2021

반응형