react-three-drei を使いたい!
解決したいこと
macでreact nativeでアプリを作っています。
react-three-dreiを使いたいのですがエラーが出てしまいます。
解決したいです。
発生している問題・エラー
以下のコードでdreiをinstallしました。
npm install @react-three/drei
そして以下のコードでimportしました。
import { PerspectiveCamera, PositionalAudio } from '@react-three/drei/native'
すると以下のエラーが出ました。
While trying to resolve module three-mesh-bvh
from file /Users/ss/memoapp001/node_modules/@react-three/drei/native/index.js
, the package /Users/ss/memoapp001/node_modules/three-mesh-bvh/package.json
was successfully found. However, this package itself specifies a main
module field that could not be resolved (/Users/ss/memoapp001/node_modules/three-mesh-bvh/build/index.umd.cjs
. Indeed, none of these files exist:
自分で試したこと
まずreact three fiberをinstall, importはできました。
その時も最初にエラーが出たのですが、この時はインストール元のversionとインストールするversionが同等でなかったという原因が分かったので、--save --legacy-peer-deps を付け足してinstallすることでエラーを解消しました。
しかし、dreiの場合にはなぜか three-mesh-bvh が関係しているエラーで,これに関して調べてみたところ、dreiのinstallに加え、three-mesh-bvh を独立でinstallしなければいけないのかもしれないと推測し、three-mesh-bvhを加えてinstallしたが同じエラーが出てきてしまいました。
dreiの公式ドキュメントを調べたら、
this package is using the stand-alone three-stdlib instead of three/examples/jsm
とあったので、three-stdlibは単独でinstallしなければいけないことは分かるのですが、なぜthree-mesh-bvhがエラー文で出てくるのか分かりませんでした。