【问题标题】:Unable to resolve module in react-viro无法解析 react-viro 中的模块
【发布时间】:2019-02-13 07:45:07
【问题描述】:

我正在尝试运行此应用程序,但出现以下错误! https://github.com/vnovick/pile-blocks-ar

我从这里https://docs.viromedia.com/docs/importing-assets检查了正确的资产导入指令 一切似乎都是合法的,但我不断收到错误消息!

===

错误:捆绑失败:错误:无法从/Users/###/pile-blocks-ar-master/js/GameSceneAR.js 解析模块./res/tetris/blocks_1.vrx:无法从/Users/###/pile-blocks-ar-master/js/GameSceneAR.js 找到模块./res/tetris/blocks_1.vrx。事实上,这些文件都不存在:

  • `/Users/###/pile-blocks-ar-master/js/res/tetris/blocks_1.vrx ...

===

我将 package.json 中的版本更改为最新版本: “反应”:“16.6.1”, “反应原生”:“0.57.7”, “反应病毒”:“2.13.0”

提前致谢:)

【问题讨论】:

    标签: javascript reactjs react-native


    【解决方案1】:

    如果您在现有的 React-Native 应用程序(不是使用 Viro CLI 创建的)中导入了 ViroAR,则需要手动添加资产支持。

    这是指南: https://docs.viromedia.com/docs/importing-assets

    如果您使用的是 RN > 0.59,那么您应该放弃 viro 指令并修改 metro.config.js 文件(位于项目根目录中)看起来像这样:

    /**
     * Metro configuration for React Native
     * https://github.com/facebook/react-native
     *
     * @format
     */
    
    module.exports = {
      resolver: {
        assetExts: [
          'obj',
          'mtl',
          'JPG',
          'vrx',
          'hdr',
          'gltf',
          'glb',
          'bin',
          'arobject',
          'png',
        ],
      },
      transformer: {
        getTransformOptions: async () => ({
          transform: {
            experimentalImportSupport: false,
            inlineRequires: false,
          },
        }),
      },
    };
    
    

    resolver.assetExts 是关键。

    【讨论】:

    • 这会导致构建错误:Process 'command 'npx'' finished with non-zero exit value 1
    猜你喜欢
    • 2018-03-05
    • 2017-10-11
    • 2017-07-23
    • 2016-03-23
    • 1970-01-01
    • 2018-11-18
    • 2020-04-15
    • 2020-03-02
    • 2016-12-27
    相关资源
    最近更新 更多