Flutter错误:在url_launcher_web和pointer_interceptor上没有名为“isVisible”的参数错误。

8
在运行flutter pub upgrade之后,当我运行flutter build web时,出现了以下错误。
../../development/flutter/.pub-cache/hosted/pub.dartlang.org/pointer_interceptor-0.9.2/lib/src/web.dart:31:6: Error: No named parameter with the name 'isVisible'.
  }, isVisible: false);
     ^^^^^^^^^

../../development/flutter/.pub-cache/hosted/pub.dartlang.org/url_launcher_web-2.0.7/lib/url_launcher_web.dart:50:61: Error: No named parameter with the name 'isVisible'.
        .registerViewFactory(linkViewType, linkViewFactory, isVisible: false);
8个回答

7
我也遇到了与 url_launcher_web 相关的问题,运行 flutter pub get 没有解决。在我的情况下,升级 flutter 版本解决了这个问题。
之前:
Flutter 2.5.3 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 18116933e7 (4 months ago) • 2021-10-15 10:46:35 -0700
Engine • revision d3ea636dc5
Tools • Dart 2.14.4

之后:

Flutter 2.10.0 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 5f105a6ca7 (3 days ago) • 2022-02-01 14:15:42 -0800
Engine • revision 776efd2034
Tools • Dart 2.16.0 • DevTools 2.9.2

在2.5.3版本中对我来说运行良好,但我将Flutter更新到2.10.3后,由于某些原因我想切换回2.5.3,现在我遇到了这个错误,无法解决。 :( - Saif Ur Rehman Saif

2
该问题是Url_launcher 6.0.18自动将内部库url_launcher_web从2.0.6更新到2.0.7所致。
现在2.0.7使用的是flutter 2.10,而2.0.6使用的是flutter 2.5。他们这样做没有“要求”flutter 2.10(他们用url_launcher 2.0.8修复了这个问题)。但如果你还在使用flutter <2.10,则会出现问题。
在这里有两个选择:
  1. 便宜的选项。(我现在正在使用这个“临时补救措施”):将以下内容添加到您的pubspec.yaml中(在dependencies或dev_dependencies下方)
dependency_overrides:
  url_launcher_web: 2.0.6

这只是让url_launcher加载“正确”的版本。

  1. 正确的选择是将您的sdk升级到flutter 2.10(使用flutter upgrade)。也许您现在不想这样做,但最终应该这样做。

1
将如图所示的代码行添加到 pubspec.yaml 中。
dependency_overrides:
  url_launcher_web: 2.0.6

enter image description here


0
我也在扩展答案,我也遇到了同样的问题,下面的解决方案对我有效。 我打开了Dart Packages中的url_launcher_web.dart文件,并转到url_launcher_web-2.0.7。在url_launcher_web.dart文件之后,我从registerWith()方法中删除了isVisible: false,如下所示:
static void registerWith(Registrar registrar) {
    UrlLauncherPlatform.instance = UrlLauncherPlugin();
    ui.platformViewRegistry
        .registerViewFactory(linkViewType, linkViewFactory, isVisible: false);
  }

After:

static void registerWith(Registrar registrar) {
    UrlLauncherPlatform.instance = UrlLauncherPlugin();
    ui.platformViewRegistry
        .registerViewFactory(linkViewType, linkViewFactory);
  }

请看下面谁在使用Android Studio: 输入图像描述

0

你需要加载正确的版本。运行以下命令: flutter clean; flutter pub get;

然后重新构建。


目前你的回答不够清晰,请[编辑]以添加更多细节,帮助其他人理解它如何回答问题。你可以在帮助中心找到有关如何编写好答案的更多信息。 - Community

0

我在Flutter依赖目录下的url_launcher_webpointer_interceptor包文件中搜索了isVisible: false属性,并将其删除。在终端中运行flutter pub get后,错误得到了修复。


0
你可以在你的 pubspec.yaml 中使用以下代码:

dependency_overrides: url_launcher_web: 2.0.6

这与编程有关。

0

我也遇到了与url_launcher_web相关的问题,但运行flutter pub get并没有解决。在我的情况下,在index.html中添加这一行代码解决了问题。

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接