对该常量表达式的求值会抛出一个表达式

2023-12-20

我的 dart 分析显示代码中存在以下错误:

error: Evaluation of this constant expression throws an exception. 
        (const_eval_throws_exception at [laundry] 
        lib\pick_drop_ui\pages\works.dart:97) error: Arguments of a constant creation must be constant expressions. 
        (const_with_non_constant_argument at [laundry] 
        lib\pick_drop_ui\pages\works.dart:98) error: Arguments of a constant creation must be constant expressions. 
        (const_with_non_constant_argument at [laundry] 
        lib\pick_drop_ui\pages\works.dart:104) error: Evaluation of this constant expression throws an exception. 
       (const_eval_throws_exception at [laundry] 
       lib\pick_drop_ui\pages\works.dart:104)

在下面的代码中:

import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';

class work extends StatefulWidget {
  @override
  _workState createState() => _workState();
}

class _workState extends State<work> {

  var workdata;                        //Variable to get the snapshort of the works available in the firestore

  @override
  void initState() {
    // TODO: implement initState
    super.initState();
    print("Called work");
    setState(() {
      workdata = getData();
    });
  }


  getworkdetails(){
    if(workdata != null){
      return StreamBuilder(
        stream: workdata,
        builder: (context,snapshot){
          if(snapshot.data != null){
          return ListView.builder(
            shrinkWrap: true,
            itemCount: snapshot.data.documents.length,
            itemBuilder: (context,i){
              return workcards(snapshot.data.documents[i].data['Name of customer'],snapshot.data.documents[i].data['Address']);
            },
          );
          }else{
            return Text("Malfunction");
          }
        },
      );
    }else{
      print("getting workdata");
    }
  }




  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("Jobs Assigned"),
      ),

      body: getworkdetails(),
    );
  }
}


getData() {
  return Firestore.instance.collection('Jobs').snapshots();
}


class workcards extends StatelessWidget{

  final  name;
  final  address;

  workcards(this.name,this.address);


  @override
  Widget build(BuildContext context) {
    // TODO: implement build
    return Card(
      color: Colors.blueGrey[50],
      child: InkWell(
        splashColor: Colors.blue[100].withAlpha(100),
        onTap: () {
        },
        child: Column(
          mainAxisSize: MainAxisSize.min,
          children: <Widget>[
            const ListTile(
              leading: Icon(Icons.view_module),
              // Error: invalid constant value
              title: Text(
                name,
                style: TextStyle(
                  fontWeight: FontWeight.w600,
                  letterSpacing: .5,
                ),
              ),
              // Error: invalid constant value
              subtitle: Text(address),
            ),
            ButtonBar(
              children: <Widget>[
                RaisedButton(
                  child: const Text('OPEN'),
                  onPressed: () {/* ... */},
                  focusElevation: 10,
                ),
                RaisedButton(
                  child: const Text('SHARE'),
                  onPressed: () {/* ... */},
                  focusElevation: 20,
                ),
              ],
            ),
          ],
        ),
      ),
    );
  }
}


去除const之前的关键字ListTile.

一般来说,为了拥有一个编译时常量的小部件,它的所有属性也应该是编译时常量。在你的情况下这是不可能的,因为title财产只能通过评估来实现name,只有在运行时才知道。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对该常量表达式的求值会抛出一个表达式 的相关文章

  • 使用 Gradle 在多个 Android 应用程序之间共享 Android 库

    我有 Android 应用程序 A 和 B 我想将每个应用程序中的重复代码提取到共享库 L 中 如何使用 Gradle 执行此操作 我之前见过这个问题的一些排列 但答案很少 最接近 最好的已问问题是这个 多个 Android 应用程序依赖于
  • Flutter sqflite 插入列表

    我正在尝试将列表插入到 flutter 中的 sql 数据库中 但我不知道该怎么做 有人可以帮助我吗 当我初始化 mi 数据库时 我有这个 Directory documentsDirectory await getApplicationD
  • “@required”注释作为错误而不是警告

    现在在我的 Flutter 项目中 当我用注释构造函数参数时 required当实例化构造函数时忘记它 我从 IDE 收到一条轻微警告 表明该参数是必需的 我希望这在 IDE 中显示为实际错误 有办法进去吗analysis options
  • Android Studio SDK 安装程序在解压缩“platform-tools/systrace/NOTICE”时无限期挂起

    adb 无法从命令提示符处使用 设置了正确的路径 我认为平台工具的原始安装出现了问题 Studio 告诉我更新 但每次都会发生这种情况 我的机器上似乎缺少 adb exe this is the android studio event l
  • 如何实现Tabbar中每个选项卡的搜索动作

    我有一个页面 TabBar 中有 2 个选项卡 如下所示 class SearchByCityOrPerson extends StatefulWidget SearchByCityOrPerson Key key this title s
  • Android Studio“等待调试器”

    我创建了简单的 你好 世界 使用 android studio 的项目 当我在设备或模拟器上运行它时 一切都很好 然后我尝试在调试模式下运行它 几分钟后屏幕上的 等待调试器 对话框失败并且 Error running test test U
  • SingleChildScrollView 内垂直居中的小部件

    我是 Flutter 新手 所以我通过制作一个简单的表单来训练自己 我意识到当我在 iPhone 上调试时 虚拟键盘触发了一个错误 A RenderFlex overflowed by 29 pixels on the bottom 我通过
  • 如何在 Flutter 中解码 Gzip Http 响应?

    我是颤振新手 我正在发出网络请求 并且得到了正确的响应 但数据已被压缩 我已经在 Swift 中解压了相同的内容 但是对于 Flutter 我无法做到这一点 有人可以帮忙吗 这是我尝试过的 import dart convert impor
  • 将元素大小调整为屏幕宽度/高度的百分比

    是否有一种简单的 非 LayoutBuilder 方法来调整元素相对于屏幕尺寸 宽度 高度 的大小 例如 如何将 CardView 的宽度设置为屏幕宽度的 65 不能在里面完成build方法 显然 因此必须推迟到构建后 是否有一个首选的地方
  • 在flutter中使用REST api将列表数据发送到cloud firestore时出错

    我无法在 flutter 中使用 REST api 将字符串列表发送到云 firestore here is my code Future
  • Dart,无法调用Generic的方法

    我正在尝试创建一个抽象数据模型 在其中传递数据并输入 a 然后返回列表 但是当我无法调用时T fromJson 方法 注意传递类型有方法fromJson class DataList
  • Flutter 的 %1 安装错误不是有效的 win32 应用程序

    我是颤振的新手 并尝试通过以下步骤安装它 1 下载并解压到驱动器中 2 在环境变量中设置路径 现在我正在尝试运行 flutter doctor 它向我显示以下错误 请检查是否有人遇到同样的问题 谢谢 Flutter Channel beta
  • 如何在不影响背景内容的情况下弯曲底部导航栏角?扑

    我创建了一个带有颤动的自定义底部导航栏 但我仍然可以看到白色填充了弧角后面的背景 我想看看背景内容 这就是底部导航栏的样子 正如你所看到的 角落里充满了白色 这是我的底部导航栏代码 bottomNavigationBar Container
  • Android Studio 与 Google Play 服务的编译问题

    我正在运行 Android Studio 0 8 4 并在 Android Studio 0 8 2 上尝试过此操作 我正在运行 Java JDK 1 8 0 11 并尝试使用 JDK 1 8 0 05 每当我尝试构建我的 android
  • 在应用程序开发中缩放字体大小的理想方法是什么?

    我知道这个问题可能听起来有点奇怪 我是 Flutter 开发的新手 在使我的应用程序响应时 我在缩放文本时总是遇到问题 如果我保持字体大小不变 例如 10 或 20 有时在高分辨率设备上看起来太小 在小手机上看起来太大 然后我尝试根据屏幕尺
  • 如何在 Flutter 中显示 Android Activity?

    我目前正在开发一个在 flutter 中使用 Google Maps Api 的应用程序 由于支持不完整 我只能使用静态地图 点击它会导致 Android 活动没有用 我需要的是一张地图 我可以在其中搜索位置并向该位置添加标记 那么是否可以
  • 如何在Flutter中保存图像文件?使用 Image_picker 插件选择的文件

    我真的很困惑 Flutter 很棒 但有时会让人困惑 所有代码都完成了 所选文件也在预览中显示 但我尝试将该文件保存在本地 Android 存储中 我无法获得成功 Future getImage ImageSource imageSourc
  • iOS 有 INTERNET 权限吗?

    我在 iOS 设备上的 flutter dio 包上遇到了一个奇怪的问题 我编写了一个向 url 发送 GET 请求的应用程序 Android 上一切正常 但 iOS 上的请求似乎无法通过 没有发生任何错误 什么也没有 我在 Android
  • 导航到 Flutter 中的新屏幕

    如何在 Flutter 中导航到新屏幕 这些问题很相似 但比我问的要多 Flutter 导航到新屏幕 并清除所有以前的屏幕 https stackoverflow com questions 52689049 flutter navigat
  • Dart/Flutter 如何编译到 Android?

    我找不到任何具体的资源 Dart 是否被编译到 JVM 或者 Google 的团队是否编译了 Dart VM 以在 JVM 上运行 然后在 JVM 内的 Dart VM 中运行 Dart 前者更有意义 并且符合 无桥 的口号 但后者似乎更符

随机推荐