如何在Expo和React Native中使用绝对路径导入?

爱德华多·里尔

我试图在Expo和React Native中使用绝对导入路径而不是相对路径

我查看了expo文档,但找不到答案...在react社区中搜索主题时,我发现babel-plugin-module-resolver,但似乎Expo已经在使用它了,所以我将.babelrc更改为创建一些别名:

{
  "presets": ["babel-preset-expo"],
  "env": {
    "development": {
      "plugins": [
        "transform-react-jsx-source",
        ["module-resolver", {
          "root": ["./app"],
          "alias": {
            "Components": "./app/components",
          }
        }]
      ]
    }
  }
}

但我收到以下错误:

Unable to resolve module '@expo/vector-icons/glyphmaps/Entypo.json' 
from '/Users/eduardoleal/Code/lua/rook/node_modules/@expo/vector-icons/Entypo.js': 
Module does not exist in the module map or in these directories:   /Users/eduardoleal/Code/lua/rook/node_modules/@expo/vector-icons/node_modules/@expo/vector-icons/glyphmaps ,   /Users/eduardoleal/Code/lua/rook/node_modules/@expo/vector-icons/glyphmaps  This might be related to https://github.com/facebook/react-native/issues/4968 To resolve try the following:   
1. Clear watchman watches: 'watchman watch-del-all'.   
2. Delete the 'node_modules' folder: 'rm -rf node_modules && npm install'.   
3. Reset packager cache: 'rm -fr $TMPDIR/react-*' or 'npm start --reset-cache'.
ABI16_0_0RCTFatal -[ABI16_0_0RCTBatchedBridge stopLoadingWithError:] __34-[ABI16_0_0RCTBatchedBridge start]_block_invoke_2 _dispatch_call_block_and_release _dispatch_client_callout _dispatch_main_queue_callback_4CF __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ __CFRunLoopRun CFRunLoopRunSpecific GSEventRunModal UIApplicationMain main start 0x0 

有什么简单的方法可以导入绝对路径?

爱德华多·里尔

一段时间后尝试使它工作。我可以用以下方法解决问题.babelrc

{
  "presets": ["babel-preset-react-native-stage-0/decorator-support"],
  "env": {
    "development": {
      "plugins": ["transform-react-jsx-source"]
    }
  },
  "plugins": [
    ["module-resolver", {
      "alias": {
        "react-native-vector-icons": "@expo/vector-icons",
        "@expo/vector-icons/lib/create-icon-set": "react-native-vector-icons/lib/create-icon-set",
        "@expo/vector-icons/lib/icon-button": "react-native-vector-icons/lib/icon-button",
        "@expo/vector-icons/lib/create-icon-set-from-fontello": "react-native-vector-icons/lib/create-icon-set-from-fontello",
        "@expo/vector-icons/lib/create-icon-set-from-icomoon": "react-native-vector-icons/lib/create-icon-set-from-icomoon",
        "@expo/vector-icons/lib/icon-button": "react-native-vector-icons/lib/icon-button",
        "@expo/vector-icons/glyphmaps": "react-native-vector-icons/glyphmaps",
        "$components": "./app/components",
        "$config": "./app/config",
        "$helpers": "./app/helpers",
        "$navigators": "./app/navigators",
        "$reducers": "./app/reducers",
        "$screens": "./app/screens",
        "$images": "./assets/images",
        "$fonts": "./assets/fonts",
        "$icons": "./assets/icons",
        "$videos": "./assets/videos",
      }
    }]
  ]
}

我将的内容复制babel-preset-expo到了自己的.babelrc这不是最好的解决方案...但是它可以正常工作。

有关此的更多详细信息

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从FileDialog获取绝对路径?

如何处理go导入绝对路径和github分支?

结合绝对路径和相对路径以获得新的绝对路径

如何在Java中使用正确的字符编码获取绝对路径?

如何在Spring MVC中使用绝对路径加载图像?

使用ES6语法和绝对路径导入外部模块

使用绝对路径导入React组件

使用baseUrl导入模块时,如何使tsc解析绝对路径?

图片具有绝对路径-如何在LaravelMix中使用子目录URL

如何解决使用绝对路径导入?

如何在react-native中获取文件的绝对路径?

使用相对路径和绝对路径在Powershell脚本中调用文件

如何使用react-native和expo获取位于assets文件夹中的文件的绝对路径?

如何在基于TypeScript的React Native应用程序中为导入配置绝对路径?

在使用ParcelJS构建的Cypress测试中,如何在绝对路径中使用导入?

如何在Create React App项目中避免很长的路径并使用绝对路径?

React Router Link绝对路径

在bash中使用readlink并混合变量和字符串来返回绝对路径很困难

如何使用文件的绝对路径打开文件?

Sox绝对路径和管道

如何在Windows File Explorer中使用绝对路径

如何在unix中使用expr从存储在变量中的文件的绝对路径名中提取父目录?

如何在WPF项目中使用具有绝对路径的Image?

为什么可以在MacVim上使用相对路径和绝对路径?

如何在Windows中使用绝对路径形成FTP URL?

使用React + Webpack时如何使用绝对路径导入自定义scss?

如何在标记中使用绝对路径添加背景图像

如何在Linux中使用'find'命令获取找到的文件的绝对路径?

如何在 Katalon Studio 中使用 TestDataFactory 获取绝对路径

TOP 榜单

热门标签

归档