You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter调用构造函数时出现‘isn't a function’错误求助

解决“LeftBar isn't a function”错误的常见原因
  • 未正确导入目标文件
    检查home.dart中的导入语句,确保路径指向正确的left_bar.dart文件。若两个文件在同一目录,正确的导入应为:

    import 'left_bar.dart';
    

    路径错误会导致Dart无法识别LeftBar类,调用构造函数时自然报错。

  • LeftBar并非类类型
    确认left_bar.dart里的LeftBar是类定义,而非普通变量或函数。正确的类结构示例:

    class LeftBar {
      // 构造函数
      LeftBar();
    }
    

    若LeftBar被定义为变量(如var LeftBar = ...)或普通函数,调用LeftBar()就会触发该错误。

  • 类名大小写拼写不匹配
    Dart是大小写敏感语言,检查home.dart中调用的LeftBar与left_bar.dart里的类名是否完全一致。比如类名实际是Leftbar(小写b),但调用时写成LeftBar,会导致识别失败。

  • 构造函数被私有化
    如果LeftBar的构造函数被定义为私有形式(如LeftBar._()),在home.dart中无法直接调用,也会引发类似错误。需确保构造函数为公开,或提供工厂方法用于实例化。

  • 导入时过滤了LeftBar
    若导入语句使用show/hide关键字排除了LeftBar,比如:

    import 'left_bar.dart' show OtherClass;
    

    会导致LeftBar未被导入,无法正常调用。调整导入语句,确保包含LeftBar类。

内容的提问来源于stack exchange,提问作者Naveen Prajapati

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 07:50:29