getPrinterModel method Null safety

Future<String?> getPrinterModel(
  1. PrinterDevice device,
  2. PrinterMode mode
)

获取打印机型号 device 打印机设备 mode 打印模式(指令类型)

Implementation

Future<String?> getPrinterModel(PrinterDevice device, PrinterMode mode) {
  Future<Uint8List?> model;
  switch (mode) {
    case PrinterMode.esc:
      model = writeAndRead(device, Uint8List.fromList([0x1d, 0x49, 0x43]));
      break;
    case PrinterMode.tspl:
      model =
          writeAndRead(device, Uint8List.fromList("\r\n~!T\r\n".codeUnits));
      break;
    default:
      model = Future.value(null);
      break;
  }
  return model.then((e) => e == null ? null : String.fromCharCodes(e));
}