Über @ObservedObject gebe ich die Daten aus meinem Model an eine View weiter.
In meiner Model Klasse möchte ich nun verschiedene Berechnungen durchführen und habe mir hierfür eine Funktion geschrieben, welche Parameter annimmt, die Berechnung ausführt und anschliesend wieder zurückgibt.
Meine Model Klasse:
Alles anzeigen
Nun möchte ich allerdings gern den Members der Klasse mithilfe der Funktion die berechneten Daten übergeben.
Als Fehlermeldung bekomme ich allerdings: Missing argument for parameter #1 in call zuürpck. Auch wird mir in der Xcode Auto Vervollständigung werden mir die Paramter nicht angezeigt.
Erstelle ich allerdings eine Instanz der Klasse, dann funktioniert alles wie gewollt. Was mache ich falsch, habe ich irgendwo einen Denkfehler?
In meiner Model Klasse möchte ich nun verschiedene Berechnungen durchführen und habe mir hierfür eine Funktion geschrieben, welche Parameter annimmt, die Berechnung ausführt und anschliesend wieder zurückgibt.
Meine Model Klasse:
Quellcode
- import Foundation
- class Statistik : ObservableObject {
- var comparisonDateString = ""
- var goalValue = 0
- var currentValue = 0
- func calculatesDateDifference(today: Date, comparisonDateString : String, dateComponent : Calendar.Component) -> DateComponents{
- let dateFormatter = DateFormatter()
- dateFormatter.dateFormat = "dd.MM.yyyy"
- let compareDate = dateFormatter.date(from: comparisonDateString)
- let difference = Calendar.current.dateComponents([dateComponent], from: today, to: compareDate!)
- return difference
- }
- let perDays = calculatesDateDifference()
- }
Als Fehlermeldung bekomme ich allerdings: Missing argument for parameter #1 in call zuürpck. Auch wird mir in der Xcode Auto Vervollständigung werden mir die Paramter nicht angezeigt.
Erstelle ich allerdings eine Instanz der Klasse, dann funktioniert alles wie gewollt. Was mache ich falsch, habe ich irgendwo einen Denkfehler?