Vue.js berechnete Eigenschaft funktioniert nicht

9

Ich habe ein Benutzerdatenobjekt, das einen first_name und last_name und eine berechnete Eigenschaft hat, die den vollständigen Namen zurückgibt, aber das folgende scheint nicht in meiner v-for-Direktive zu funktionieren?

%Vor%     
adam78 31.12.2015, 21:46
quelle

6 Antworten

11

Ich glaube nicht, dass eine berechnete Eigenschaft in Vue.js ein Argument akzeptieren kann, sie sollen in der Lage sein, sich selbst ohne zusätzliche Interaktion aufzubauen. Ich glaube, dass Ihr Fehler darin bestand, dass Sie eine Methode geschrieben und dann versucht haben, eine berechnete Eigenschaft zu registrieren.

Es sollte also einfach sein, die Registrierung Ihrer Funktion von computed auf methods zu ändern, was sie wirklich ist.

%Vor%

Auf diese Weise müssen Sie Ihren anderen Code nicht ändern.

    
Azeame 01.01.2016 22:48
quelle
8

Versuchen Sie, den Cache für die berechnete Eigenschaft zu deaktivieren, wie in Ссылка erwähnt. Auf diese Weise wird der berechnete Wert immer neu berechnet.

%Vor%     
Fernanda Lemos 04.01.2017 22:14
quelle
2

Berechnete Eigenschaften unterstützen die Verschachtelung nicht.

Beweis und einige Problemumgehungen / alternative Lösungen: Ссылка

    
ceejayoz 31.12.2015 21:50
quelle
1

Sie können die Benutzer in Ihrer berechneten Eigenschaft zuordnen und dieses zugeordnete Array wie folgt verwenden:

%Vor%

Dann in der Ansicht können Sie etwas tun wie:

%Vor%

Und ich benutze es6 Pfeilfunktion. Wenn Sie die Pfeilfunktion nicht verwenden möchten, können Sie Folgendes tun:

%Vor%     
Mali Naeemi 21.03.2017 22:54
quelle
0

Ich hatte einen ähnlichen Fall, wenn ich eine Props-Eigenschaft mit nicht deklarierten verschachtelten Eigenschaften verwende. Aus irgendeinem Grund machte ich diese Arbeit ein

console.log(user.first_name)

%Vor%

Auch das habe ich mit Lambda-Ausdruck gemacht Ссылка

%Vor%     
quelle
-3

Eine berechnete Eigenschaft für etwas so zu machen ist ein wenig übertrieben.

%Vor%     
notANerdDev 01.01.2016 06:23
quelle

Tags und Links