【问题标题】:Error: Unable to resolve module `@react-native-community/toolbar-android`错误:无法解析模块`@react-native-community/toolbar-android`
【发布时间】:2020-10-27 08:59:44
【问题描述】:

奇怪的是,react-native-vector-icons 运行良好,但在新版本的 package.json 文件中使用 ^ ("^6.6.0") 作为其版本时会发生此错误。

这很奇怪,因为两天前它运行良好,但现在我的项目开始运行到这个错误:

错误:错误:无法从node_modules\react-native-vector-icons\lib\toolbar-android.js 解析模块@react-native-community/toolbar-android:在项目中找不到@react-native-community/toolbar-android。

【问题讨论】:

    标签: javascript reactjs react-native android-toolbar react-native-vector-icons


    【解决方案1】:

    在阅读this issue 并尝试了许多解决方案后,我找到了两个解决方案:

    • 您可以删除所有node_modules文件夹并将react-native-vector-icons的版本改为"6.6.0"而不是"^6.6.0",然后重新安装所有软件包。绝对,最好删除所有缓存和构建并重新开始一切。 (不推荐

    • 您可以使用以下命令安装@react-native-community/toolbar-android

      yarn add @react-native-community/toolbar-android
      

      或者

      npm install --save @react-native-community/toolbar-android
      

    注意:这两种解决方案都是临时的,很快就会修复此错误,无需安装toolbar-android 包。


    上一次更新

    我在我的项目中将包更新到版本"^7.0.0",但问题仍然存在,所以这个解决方案目前是坚持不懈的。


    新更新

    此问题已在版本"^7.1.0" 上修复,无需安装@react-native-community/toolbar-android

    【讨论】:

    • 如何更新到"^7.1.0"?我仍然遇到这个问题。
    • @ZeeshanAhmadKhalil,对于npm使用npm命令对于yarn使用yarn命令,还有另一种方法,完全删除它,然后用新版本重新安装,如果仍然出现这个问题,你应该知道,还有另一个包本身使用vector-icon并安装了较低版本,为了解决这个问题,你仍然应该安装@react-native-community/toolbar-android
    【解决方案2】:

    更新库

    react-native-vector-icons

    到最新版本。

    【讨论】:

      【解决方案3】:

      编辑这个文件 node_modules\react-native-vector-icons\lib\toolbar-android.js

      删除'从'@react-native-community/toolbar-android'导入 ToolbarAndroid;' 编辑返回空

      【讨论】:

      • 糟糕的想法。由于 node_modules 没有进入 git,我相信,如果您再次重新安装模块,您将始终返回进行上述更改。
      【解决方案4】:

      这样做: rm -rf 节点模块/ rm -rf package.lock.json npm 我 react-native start --reset-cache

      来自您的项目目录:)

      【讨论】:

        【解决方案5】:

        我也有这个问题。 就我而言,仅当我使用最新版本 (7.0.0) 删除并再次添加包时才有效。

        yarn remove react-native-vector-icons
        yarn add react-native-vector-icons
        

        【讨论】:

          【解决方案6】:

          直接从 react native 导入就可以解决我的问题

          node_modules\react-native-vector-icons\lib\toolbar-android.js

          import { ToolbarAndroid } from 'react-native';
          

          【讨论】:

            【解决方案7】:

            同样的问题,我解决了: 我的环境: 注册护士:0.61.5 节点:v12.18.3 操作系统:Windows 10 专业版

            您可以安装 react-native-vector-icons 最新版本(当前为 7.0.0)。 并且不要运行自动链接(react-native link react-native-vector-icons) 最后,运行react-native start --reset-cache 祝你好运。

            【讨论】:

              【解决方案8】:

              首先让我们了解package.json 中用于packege 版本的标准约定。 因此,如果您看到~1.0.2,则表示安装版本1.0.2 或最新的补丁版本,例如1.0.4。如果您看到^1.0.2,则表示安装版本1.0.2 或最新的次要版本或补丁版本,例如1.1.0

              现在,正题。

              问题是因为您使用的react-native-vector-icons 版本给您带来了一些麻烦。 通过这个命令在你的项目目录下检查它的版本:

              npm list react-native-vector-icons --version\是6.6.0 ??

              没有?? .有问题。你需要严格的6.6.0,但你还有别的东西。

              解决方案:

              删除项目下的node_modules 目录。将package.json 中的react-native-vector-icons 的版本更改为6.6.0(基本上删除^ 以告诉npm 得到我想要的东西。不多不少!)

              那就npm install吧!

              【讨论】:

                【解决方案9】:

                有这个完全相同的错误。我所要做的就是安装toolbar-android 和瞧!

                npm install --save @react-native-community/toolbar-android

                【讨论】:

                • 欢迎来到 SO!请注意,其他人已经回答了这个问题,他们详细说明了如何解决这个问题。
                • @MyKoryto 接受的答案划掉了npm install 部分。我不想升级到新版本的 RN Vector Icons。由于安装 toolbar-android 解决了我的问题,我想我可能会在这里发布它,以防有人遇到我的情况。干杯!
                • 好的!有道理,不好意思打扰你了!
                • 没问题!谢谢!
                • 这是唯一对我有用的解决方案。
                【解决方案10】:

                从版本 6 升级到 7 后,我也遇到了同样的错误。只需重置缓存即可解决此问题。

                请尝试npm start -- --reset-cache

                【讨论】:

                  【解决方案11】:

                  对于这种情况,您的模块文件中没有toolbar-android,正如朋友所说,您可以通过此命令修复它

                  Windows 用户:

                  npm install --save @react-native-community/toolbar-android
                  

                  Mac 用户:

                  yarn add @react-native-community/toolbar-android
                  

                  但总的来说:我想告诉你们一个经验,当你们遇到这种以 "Unable to resolve module" 开头的错误时。 p>

                  如果您查看错误,我们发现系统告诉我们的模块有问题。

                  如果你没有那个模块。您可以使用命令安装它

                  Windows 用户:

                  npm install --save 模块(注意:模块是你需要安装的包或模块的名称)

                  和 Mac 用户:

                  yarn add THE MODULE(attention: THE MODULE IS THE NAME OF PACKAGES OR MODULES that u need to install)
                  

                  例如让我们看看这个错误:

                  error Unable to resolve module `@react-native-community/slider` from `App.js`: @react-native-community/slider could not be found within the project.
                  

                  如您所见,错误告诉我们在我们的项目中找不到此模块。 所以我们需要用这个命令安装它: 对于 Windows 程序员:

                  npm install --save @react-native-community/slider
                  

                  对于 mac 程序员:

                  yarn add @react-native-community/slider
                  

                  就是这样。

                  我希望你清楚地理解我,并且没有无法解决模块错误的问题,我的命令对你有用。

                  最好的问候

                  梅赫拉德卡兰普尔 (MEH)

                  【讨论】:

                    【解决方案12】:

                    \node_modules\native-base\node_modules\react-native-vector-icons\lib\toolbar-android.js的路径

                    import ToolbarAndroid from '@react-native-community/toolbar-android' 替换为import {ToolbarAndroid} from './react-native';

                    【讨论】:

                      【解决方案13】:

                      另一种选择是使用 expo 的矢量图标。像这样的东西。 从“@expo/vector-icons”导入 { Ionicons }。 然后像这样渲染你的图标;

                      <Ionicons
                        name="ios-exit-outline"
                        color={colors.danger}
                        size={28}
                        style={{ marginRight: -15 }}
                      /> 
                      

                      【讨论】:

                        猜你喜欢
                        • 2021-03-11
                        • 1970-01-01
                        • 2019-08-09
                        • 2019-07-06
                        • 2017-06-06
                        • 1970-01-01
                        • 1970-01-01
                        • 2019-08-16
                        • 2022-12-12
                        相关资源
                        最近更新 更多