小编bab*_*aro的帖子

参数类型“对象?” 无法分配给参数类型“List”

在较旧的 flutter sdk 版本上,下面的示例可以正常工作,但现在出现错误 The argument type 'Object?' 无法分配给参数类型“List”

FutureBuilder(
        future: fetchEmp(),
        builder: (context, snapshot) {
          return snapshot.hasData
              ? RecommandEmp(emps: snapshot.data)  ---Here is problem!!!
              : Center(child: Image.asset('assets/images/no.png'));
        },
    ),



    class RecommandEmp extends StatefulWidget {
    
      const RecommandEmp({Key? key, required this.emps}) : super(key: key);
    
      final List<Emp> emps;
      @override
      _RecommandEmpState createState() => _RecommandEmpState();
    }
Run Code Online (Sandbox Code Playgroud)

获取Emp

Future<List<Emp>> fetchEmp() async {

  final response = await http.get(Uri.https(myUrl, 'select/emp'));

  if (response.statusCode == 200) {

    List<Emp> emp = (json.decode(utf8.decode(response.bodyBytes))["items"]  as List)
        .map((data) => Emp.fromJson(data))
        .toList();
    return emp;
  } …
Run Code Online (Sandbox Code Playgroud)

dart flutter

4
推荐指数
1
解决办法
2031
查看次数

某些字符未正确加载

下面的示例在我的列表视图中加载数据,但某些字符无效,例如。\xc3\x85 \xc3\x84 我正在尝试使用 utf8

\n\n
var jsonData = json.decode(response.body);\n\nvar jsonData = utf8.decode(response.bodyBytes);\n
Run Code Online (Sandbox Code Playgroud)\n\n

当我使用 utf8 时,结果是正确的,但在 listTile 中加载数据时出现引号并出现错误

\n\n
//I/flutter ( 4629): {"items":[{"name":"xy\xc5\xa1\xc4\x87",  //character is OK but get quotation mark\n//I/flutter ( 4629): {items: [{name: xy\xc3\x84\xc3\x84,  //wrong character\n\n\n\nclass Api {\n  static Future<dynamic> _get(String url) async {\n    try {\n      final response = await http.get(url);\n      var jsonData = json.decode(response.body);\n
Run Code Online (Sandbox Code Playgroud)\n\n

有什么解决办法吗?

\n

dart flutter flutter-test flutter-web

2
推荐指数
1
解决办法
643
查看次数

Flutter ListTile (tileColor) 有条件地

是否可以更改tileColor,例如。if _userDetails[index].salary < 1000 Colors.red else Color.blue 或者可能从查询返回颜色并设置tileColor: _userDetails[index].color,

title: Text(_userDetails[index].name),
subtitle: Text(_userDetails[index].salary.toString()),
tileColor: Colors.red,
Run Code Online (Sandbox Code Playgroud)

dart flutter

0
推荐指数
1
解决办法
238
查看次数

标签 统计

dart ×3

flutter ×3

flutter-test ×1

flutter-web ×1