首页 > 解决方案 > 错误:参数类型 'void Function()?' 不能分配给参数类型 'void Function(String?)?'

问题描述

错误很简单我不知道如何解决问题请帮忙

import 'package:flutter/material.dart';

class CheetahInput extends StatelessWidget {
  final String? labelText;
  final VoidCallback? onSaved;

  CheetahInput({@required this.labelText, @required this.onSaved});

  @override
  Widget build(BuildContext context) {
    return TextFormField(
      decoration: InputDecoration(
        fillColor: Colors.white,
        filled: true,
        labelText: labelText,
        border: OutlineInputBorder(
          borderRadius: BorderRadius.circular(16),
        ),
        floatingLabelBehavior: FloatingLabelBehavior.never,
      ),
      initialValue: '',
      validator: (String? value) {
        return value!.isEmpty ? '$labelText is required' : null;
      },
      onSaved: onSaved,
    );
  }
}

我试图用尖括号指定类型,但它没有用感谢您的帮助。

标签: flutterdart

解决方案


代替

final VoidCallback? onSaved;

final Function(String)? onSaved;

推荐阅读