Pakete, Repositories und App-Kategorien suchen

Paketdetailsv2.1.6

time

Typsichere DateTime- und Duration-Berechnungen, angetrieben durch Erweiterungen.

AndroidiOSWebmacOSWindowsLinux
30-Tage-Downloads
1,1 Mio.
Likes
387
Pub-Punkte
160

Paket installieren

flutter pub add time

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

Das time-Paket bietet in Dart sicher typisierte DateTime- und Duration-Berechnungen und verbessert Zuverlässigkeit und Lesbarkeit durch intuitive Erweiterungen. Es vereinfacht alltägliche Datums- und Zeitoperationen durch eine saubere, fließende API, die Laufzeitfehler vermeidet, die mit manueller Datumsbearbeitung verbunden sind. Mit Sicherheit und Entwicklererfahrung im Fokus entwickelt, unterstützt es alle wichtigen Plattformen wie Mobile, Web und Desktop. Das Paket ist ideal für Anwendungen, die präzise Zeitverwaltung erfordern, beispielsweise bei Planung, Timer oder Ereignisverfolgung.

Anwendungsfälle

  • Veranstaltungen planen
  • Berechnung von Zeitdifferenzen
  • Zurückzähler erstellen
  • Behandlung wiederkehrender Aufgaben
  • Zeitzone verwalten
  • Verfolgungsdauern

Hauptmerkmale

  • Typsichere Operationen
  • Umfangreiche Erweiterungsmethoden
  • Plattformübergreifende Unterstützung
  • Sicherheit zur Kompilierzeit
  • Intuitive Syntax
  • Immutable-Dauer-Verwaltung

Geeignet für

  • Entwickler, die zuverlässige Zeitlogik benötigen
  • Apps mit komplexer Planung
  • Zeitbasierte Analyse
  • Echtzeit-Anwendungen
  • Bildungswerkzeuge für die Zeitmanipulation

Hinweise

  • Kenntnis über Dart-Erweiterungen erforderlich
  • Kann die Build-Größe leicht erhöhen
  • Nicht geeignet für den Zugriff auf Systemzeiten auf niedriger Ebene
  • Beschränkt auf hochstufige Zeitberechnungen
  • Keine eingebaute Zeitzone-Umrechnung

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

⏰ Time

Build codecov pub package

With shiny extensions, if you have ever written something like this, then look no further:

final DateTime fourHoursFromNow = DateTime.now() + Duration(hours: 4);

🎖 Installation

dependencies:
  time: "^2.1.6"
⚡ Import
import 'package:time/time.dart';

🎮 Usage

final Duration tenMinutes = 10.minutes;
final Duration oneHourThirtyMinutes = 1.5.hours;
final DateTime afterTenMinutes = DateTime.now() + 10.minutes;
final Duration tenMinutesAndSome = 10.minutes + 15.seconds;
final int tenMinutesInSeconds = 10.minutes.inSeconds;
final DateTime tenMinutesFromNow = 10.minutes.fromNow;

You can perform all basic arithmetic operations on Duration as you always have been:

final Duration interval = 10.minutes + 15.seconds - 3.minutes + 2.hours;
final Duration doubled = interval * 2;

You can also use these operations on DateTime:

final DateTime oneHourAfter = DateTime() + 1.hours;

Duration is easily convertible as it always has been:

final int twoMinutesInSeconds = 2.minutes.inSeconds;

You can also convert Duration to DateTime, if needed:

final DateTime timeInFuture = 5.minutes.fromNow;
final DateTime timeInPast = 5.minutes.ago;

Iterate through a DateTime range:

final DateTime start = DateTime(2019, 12, 2);
final DateTime end = start + 1.weeks;
final DateTime tuesday = start.to(end).firstWhere((date) => date.weekday == DateTime.tuesday);

Granular comparison between DateTime fields:

final DateTime specificDate = DateTime(2021, 01, 01);
final DateTime otherDate = DateTime(2021, 02, 01);

print(specificDate.isAtSameYearAs(otherDate)); // true
print(specificDate.isAtSameMonthAs(otherDate)); // false
print(specificDate.isAtSameDayAs(otherDate)); // false

You can also delay code execution:

void doSomething() async {
  await 5.seconds.delay;
  // Do the other things
}

You can also use the popular copyWith:

final initial = DateTime(2019, 2, 4, 24, 50, 45, 1, 1);
final expected = initial.copyWith(
  year: 2021,
  month: 10,
  day: 28,
  hour: 12,
  minute: 45,
  second: 10,
  millisecond: 0,
  microsecond: 12,
);

Visit the API Reference to find out all that is available.

🐛 Bugs/Requests

If you encounter any problems feel free to open an issue. If you feel the library is missing a feature, please raise a ticket on Github and I'll look into it. Pull request are also welcome.

👏 Inspiration

  • Swift library of the same name - Time.
  • Kotlin library of the same name - Time.

⭐ License

MIT License

Kategorien

Abhängigkeiten

Abhängigkeiten 1 Einträge

Quell-Repository

Projekte, die dieses Paket verwenden

Ranglisten