如何在 Flutter 中重构?

How to refactor in flutter?

我是 flutter 的初学者,我不知道如何重构。

我不想在每个 class 中写相同的 Dart 属性。

getAlert_1({required BuildContext context,required String title, required String msg}){
 return AwesomeDialog(
  context: context,
  title: title,
  desc: msg,
  dialogType: DialogType.INFO
  )..show();
}

getAlert_2({required BuildContext context,required String title, required String msg}){
 return AwesomeDialog(
  context: context,
  title: title,
  desc: msg
  dialogType: DialogType.SUCCES
  )..show();
}

getAlert_2({required BuildContext context,required String title, required String msg}){
 return AwesomeDialog(
  context: context,
  title: title,
  desc: msg,
  dialogType: DialogType.WARNING
  )..show();
}

我想重构下面的代码。

  context: context,
  title: title,
  desc: msg,

请教我怎么做。

创建一个包含 class 的文件,该文件将具有 returns 自定义小部件的功能,您可以在整个项目中重复使用。

创建一个名为 customAwesomeDialog.dart.

的文件

在文件中,创建如下:


import 'package:flutter/material.dart';

class CustomAwesomeDialog {

  CustomAwesomeDialog();


  generateDialog(BuildContext context, String title, String description) {
   return AwesomeDialog(
    context: context,
    title: title,
    desc: description
    dialogType: DialogType.SUCCES
   )..show();
  }
 }

现在转到要调用此小部件的任何 class 文件。 导入上面的class.


import ‘customAwesomeDialog.dart’;

实例化 class

 CustomAwesomeDialog cDialog = CustomAwesomeDialog();

然后在class

内使用

cDialog.generateDialog(context, “Success”, “You have made it”);